티스토리 뷰

포너블/LOB

LOB wolfman 풀이

삼전동해커 2020. 8. 25. 10:26

wolfman을 풀어보장.



c파일을 확인해보니 별걸 다 막는다.


일단 buffer를 40만큼 할당했고,i가 있다. orc에서 추가 된건 argv[1]의 길이가 48보다 크면 안된다느 점이다.

여태 우리가 썼던 방식으로는 못푼다.


해결방법은 argv[2]를 쓰면된다.



gdb를 보자.


44만큼 스택을 확장했고,



buffer의 위치는 ebp-40이다.


이제 argv[2]를 사용하는 방법을 생각해보자.

평소에 우리가 사용하는 익스플로잇에서 


./orc가 argv[0]이였고, `python~~~`여기가 argv[1]이였다.

그럼 argv[1]다음에 공백을 하나 주고 값을 주면 argv[2]가 들어가지 않을까?




이렇게 공백을 줄수 있다.


값이 들어갔는지 확인을 해보면



argv[2]의 값인 0x42까지 잘들어갔다.


그럼 argv[1]에는 buffer와 ret의 값만 주고 argv[2]에는 nop sled를 탈수 있게 한 후에,쉘코드를 넣으면 되겠다.



익스플로잇을 짜주면



풀린다.






'포너블 > LOB' 카테고리의 다른 글

LOB orge 풀이  (0) 2020.08.25
LOB darkelf 풀이  (0) 2020.08.25
LOB orc 풀이  (0) 2020.08.25
LOB goblin풀이  (0) 2020.08.24
LOB cobolt풀이  (0) 2020.08.24
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/04   »
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
글 보관함