티스토리 뷰

Pwnable/Lob

Lob bugbear(14)

xxvd 2018. 1. 23. 17:32



이번 문제의 소스코드는 좀 기네요,,


ret주소가 execve라는 함수의 주소와 같지 않으면 종료시켜버리기 때문에 execve함수를 이용해야겠습니다.


이전 문제에서 사용했던 RTL기법을 사용할건데요 


ret에 공유라이브러리 주소를 넣는 대신에 execve함수의 주소를 넣어 우회하겠습니다. 그리고 execve의 함수의 ret에 system 함수의 주소를 넣고 그 인자로 

/bin/sh 의 주소를 전달해 주는 형식으로 익스플로잇 하면 되겠습니다.






    그럼 먼저 execve 함수의 주소와 system 함수의 주소를 알아보도록 하겠습니다.



그리고 /bin/sh 문자열의 주소를 구하는 소스코드를 작성해서 구해보았습니다. 소스코드는 저번 단계에서 system함수를 구했던 코드와 동일합니다.


그럼이제 익스플로잇 할 수 있겠네요! A*44+&execve+&system+dummy(4byte)+&/bin/sh 이렇게 페이로드를 구성하겠습니다.



익스플로잇에 성공했습니다. \x0a를 \x00으로 인식하는 오류가 있다고 하여 " "으로 묶어줬습니다.

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

Lob assassin(16)  (0) 2018.01.25
Lob giant(15)  (0) 2018.01.23
Lob darkknight(13)  (0) 2018.01.22
Lob golem(12)  (0) 2018.01.22
Lob skeleton(11)  (0) 2018.01.22
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
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
글 보관함