1. 문제
nx가 걸려있다.
1. binsh, system 주소를 leak 한다.
2. fgets() 를 통해 입력받고, 입력받은 것을 출력한다.
3. gets() 를 통해 입력 받는데, bof 가 발생한다.
binsh 의 주소는 고정되있고, system 의 주소는 바뀐다.
binsh 의 주소는 아마 bss 영역일테고, system 은 실제 주소를 leak 해주는 것 같다.
처음엔 binsh 주소에 "/bin/sh" 이 실제로 들어가있는 줄 알고 익스를 했는데 잘 안되서 보니 binsh 위치에 아무 값도 들어있지 않았다.
아마 위치만 지정해준 것 같고, 저기다가 "/bin/sh" 을 넣어서 쓰라는 것 같다.
다음과 같이 실행하면 될 것 같다.
1. gets(&binsh)
2. system(binsh) 실행하면 될 것 같다.
필요한 것들을 구해보자.
- gadget
- offset
offset = 0x84 + 4 = 136
2. 익스플로잇
'Wargame > HackCTF' 카테고리의 다른 글
[HackCTF] SysROP (0) | 2021.04.23 |
---|---|
[HackCTF] ROP (0) | 2021.04.20 |
[HackCTF] Look at me (0) | 2021.04.19 |
[HackCTF] Random Key (0) | 2021.04.19 |
[HackCTF] 1996 (0) | 2021.04.18 |