|
http://www.hackerschool.org/HS_Boards/zboard.php?AllArticle=true&no=5 [복사]
계속 삽질하다가 대회끝나기 1시간 전에 문득 생각해낸 방법이 몽이형이 말씀하신 그부분이구요;;
libc.6.so에서 찾은것이
add 10xx, esp
add 20xx, esp
대충이러한데 이걸 이용해서 esp 흐름은 대충 잡았고요...
환경변수에 박아놓은 payload로 점프뛰어서 ret 슬라이딩 후에 execl함수 호출하게 해 놓았거든요;;
(현재 esp위치와 환경변수까지의 거리가 1000 정도 되는거 같더라구요
ret주소가 -> 0x12345678일떄
add 20xx, esp 실행후 ret으로 인해 eip가 박히는 값이
0x12345678 0x12345678 0x12345678 0x12345678 0x12345678
| |
esp가 여길로 박혀요
결국 eip는 5678 0x1234 부분을 가리켜서 segmentation fault 떳었습니다;; 당췌 뭐가 문제일까요;; 흐음;;
맞춰보려고 앞에 A나 AA같은 값을 넣어봤는데도 같은 위치를 참조하는데
add operation을 다른것으로 잡아야할까요;;
뭐를 잘못 생각한 걸까요~~~;;
이럴줄 알았으면 미리미리 공부할 걸 그랬습니다.;;ㅠㅠ
같이 출전한 팀원들한테 얼굴을 들고 다닐수가 없네요;;
수고하십시오 감사합니다.
|
Hit : 4743 Date : 2011/01/20 02:57
|