Layer7 17과제 -F.T.Z level 16 풀이-

2019. 7. 11. 21:09FTZ

level16의 힌트입니다.

아마 오버플로우 시켜서 call 함수 포인터에 shell() 함수의 주소가 들어가게

하면 될거 같아요.

우리가 그동안은 "set disas intel"이라고 해도 실행이 가능했지만

실제 리눅스에서는 set disassembly-flavor과 같이 풀네임을 적어주어야 intel문법으로 변환 가능하다고 합니다.

16진수 38은 56

그리고 바로 그 밑에 부분이 call 함수의 주소를 대입시키는 부분 같습니다.

 

0x80484d0 shell() 함수의 주소 입니다.

 

따라서 페이로드를 56-16(call 함수 포인터의 위치)+"shell 함수의 리틀엔디안 주소"

와 같이 짜면 될거 같습니다.

와 정답!

: king poetic