막막합니다...
환경변수도 초기화하고 argv도 argv[0] 포함 싹 초기화하네요
shellcode를 어디에 넣을까 고민을 해봅시다..
혹시 /bin/sh이 어딘가 숨어있지 않을까 하고 gdb로 확인을 해보니까
메모리 젤 끝부분에 argv[0]이 담겨있네요..? 여기에 Shell code를 넣고 이 부분을 주소를 써보겠습니다.
ln으로 기존 파일과 링크로 연결시키는데 (앞 nop 50개 + shell code + 뒤 nop 50개) 로 구성하겠습니다.
그리고 argv[1]을 0xbf로 48개를 채워 실행 후 core를 분석해보니까 argv[0]의 시작 주소는 0xbfffff67인 걸 알게됬습니다.
바로 실행을 해보면
성공!
'CTF 공부 > LOB' 카테고리의 다른 글
[LOB]golem (0) | 2020.01.27 |
---|---|
[LOB]skeleton (0) | 2020.01.27 |
[LOB]troll (0) | 2020.01.24 |
[LOB]orge (0) | 2020.01.24 |
[LOB]darkelf (0) | 2020.01.24 |