본문 바로가기

wargame/lob

LOB 7 troll ->vampire


안녕하세요 :)



문제 tip 

1. 버퍼에 엄청 많은 값을 입력하면 주소는 어떻게 변할까?






코드 쓱싹

변경 사항 

if(argv[1][46]=="\xff")이면 종료 시킨다.



이번 문제는 단순하면서도 재미있습니다.

지금까지 풀었던 문제에서 ret에 담는 주소는 bffff~와 같은 형태였습니다.

근데 argv[1][46]이 \xff이면 프로그램을 종료시킵니다.

이를 우회 할 수 있는 방법은 엄청 많은 데이터를 입력 하여 주소를  정상적으로 \ff가 아니게 만들면 됩니다. 


(tmp 폴더에 복사 후 core dump를 통해 주소 값을 알아냅니다 :> )


위와 같이 NULL을 100000개 넣어주면 0xbffe~ 주소까지 채울 수 있습니다.


shell 쓱싹



:)



'wargame > lob' 카테고리의 다른 글

LOB 8 vampire -> skeleton  (0) 2017.06.12
LOB 7 troll ->vampire  (0) 2017.06.12
LOB 6 orge->troll  (0) 2017.06.12
lob tips (풀기전 알아야할 것들)  (0) 2017.06.12
LOB 5 (darkelf -> orge)  (0) 2017.06.12
LOB level6 (wolfman->darkelf)  (0) 2016.09.13