Pwnable/Lob

Lob wolfman(6)

xxvd 2017. 12. 20. 19:22




                       이번 문제는 argv[1]의 크기가 48 초과가 되면 실행을 종료시키는 조건이 붙었습니다. 

                       그런데 어차피 argv[1]에는 buffer+sfp+ret = 48byte 만큼 들어갈 것이기 때문에 저 조건은 상관 없을 것 같습니다.




                       gdb 로 darkelf를 디버깅 해 보았습니다.


                       


                      그리고 저번 문제때 썼던 방법으로 실행했습니다.


           스택은 이렇게 구성 될 것입니다.


           


      

         

            여기서 보면 argv[2]의 시작주소는 0xbffffb90입니다. 





        payload를 짜서 공략했는데 실패했다. illegal instruction이 뜨는것을 보니 저번 문제와 같이 bash2쉘을 실행해 주면 문제가 해결 될 것 같습니다.



      익스플로잇 했습니다.