티스토리 뷰

Pwnable/Lob

Lob orge(8)

xxvd 2017. 12. 22. 19:09

                        

                       orge.c의 코드 이다. argv의 갯수 제한이 있고, argv[1]과 buffer를 초기화합니다.

                       

                      이 문제는 argv[0]에 쉘코드를 넣어주면 풀릴 것 같다고 생각했습니다.




tmp로 troll을 복사해서 troll에 쉘코드와 약간의 NOP으로 구성된 심볼릭링크를 걸어줍니다.



tmp에서 코어파일을 보기위해 페이로드를 작성해줍니다.




저렇게 페이로드를 작성했을 때 스택의 구조입니다.






gdb로 코어파일을 분석하기 위해 디버깅합니다.








                                                                                                                                           



argv[0]의 시작주소는 0xbffffa74입니다.






이제 임시디렉토리인 tmp 말고 orge에서 원본파일에 심볼릭 링크를 걸어보겠습니다.



ret에 들어갈 주소를 argv[0]의 중간쯤으로 하고 페이로드를 작성하였더니 exploit 되었습니다.


원본파일에 페이로드를 작성했을 때의 스택 구조입니다.

'Pwnable > Lob' 카테고리의 다른 글

Lob vampire(10)  (0) 2017.12.22
Lob troll(9)  (0) 2017.12.22
Lob darkelf(7)  (0) 2017.12.20
Lob wolfman(6)  (0) 2017.12.20
Lob orc(5)  (0) 2017.12.20
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
TAG
more
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함