포너블/FTZ
FTZ level17 풀이
삼전동해커
2020. 8. 17. 15:29
level17을 풀어보장.
이제 3문제만 더 풀면 ftz마스터당!
이거 다하면 LOB해야지!
hint를 보자.
16번과 비슷하지만 setreuidrk main함수 내에 있다.
처음에는 그냥 main문 실행하면 동기식으로 setreuid실행하는거 아닌가? 생각했다.
근데 쉘을 실행시키는 함수가 없으니 권한만 상승되는 문제가 있다.
그럼 이 문제는 직접 쉘을 상승시켜줘야 한다.
환경변수를 이용해보자.
먼저 gdb를 보자.
똑같이 56byte만큼 스택을 확장한 후, ebp-16에 0x8048490을 넣어줬다.
0x8048490이 printit이라 생각하고 확인해보자.
맞다.
다시 main문에서 eax에 ebp-56의 값을 복사해주고,fgets를 호출했다.
별 다를 것 없이 buf시작부분에서 call함수까지의 거리가 40이니 40만큼 스택채워주고 call함수자리에 쉘코드를 올려놓은 환경변수의 주소값을 넣어주면 되겠다.
풀렸당.