본문 바로가기

WARGAME/FTZ [system]

ftz level 19 [level19]

 

 

 

이번에는 너무 짧아서 놀랐다.

 

너무 간단해보이는데..? ㅎㅎ

 

 

 

 

 

 

 

 

바로 쉘코드 환경변수에 올리고 오버플로우 시켜 ret 자리에 환경 변수 주소가 오도록 빨리빨리 진행해보자.

 

그러나 이번 문제에서는 setreuid 로 권한 상승을 해주는 부분이 없기 때문에 setreuid() 를 포함하는 쉘코드를 환경변수로 등록해야한다.

4

 

참고 https://security-nanglam.tistory.com/117

 

 

 

 

 

 

 

 

 

 

 

먼저 디버깅부터 해서 buf 의 시작주소를 기반으로 얼만큼 오버라이딩 시키면 될지부터 확인하자.

 

main+9 에 ebp-40  위치가 buf 의 위치.

 

 

 

 

 

 

 

 

스택을 그려보자면 이런 형태.

 

암튼 페이로드는 "a"*44 + 환경변수 주소 가 될 것이다.

 

 

 

 

 

 

getenv.c 생성 후 컴파일,

 

 

 

 

 

환경 변수 주소 획득 

 

 

 

 

 

 

 

 

 

 

페이로드 입력하면,

 

level20 password "we are just regular guys" 획득!

 

'WARGAME > FTZ [system]' 카테고리의 다른 글

ftz level 20 [level20]  (0) 2020.05.01
ftz level 18 [level18]  (0) 2020.05.01
ftz level 17 [level17]  (0) 2020.05.01
ftz level 16 [level16]  (0) 2020.05.01
ftz level 15 [level15]  (0) 2020.05.01