cgy12306
[LOB] gremlin 본문
ID : gremlin
PW : hello bof world
파일을 확인 해 보자.
버퍼를 16byte만큼 할당해 준다. 이러면 gate문제에서 쉘코드 길이가 25byte여서 명령어 안에 넣어줄 수 없다.
그러면 환경변수 안에 쉘코드를 넣어주고 쉘코드의 주소를 알아내서 ret에다가 그 쉘코드 주소를 넣어주는 방법을 생각해 볼 수 있다.
디버깅을 해보자.
버퍼를 16만큼 할당 해주는걸 볼 수 있다.
그러면 A를 16(buffer) + 4(SFP)만큼 덮어주고 ret에 쉘코드 주소를 넣어주면 되겠다.
우선 쉘코드를 환경변수에 넣어보자.
쉘코드의 주소를 알아보자. c코드를 작성한다.
주소는 0xbffffec5이다.
그럼 이제 명령어를 입력해보자.
./cobolt `python -c 'print "A"*20 + "\xc5\xfe\xff\xbf"'`
쉘획득에 성공했다.
비밀번호는 hacking exposed이다.
'Wargame > LOB' 카테고리의 다른 글
[LOB] wolfman (0) | 2019.07.15 |
---|---|
[LOB] orc (0) | 2019.07.15 |
[LOB] goblin (0) | 2019.07.15 |
[LOB] cobolt (0) | 2019.07.06 |
[LOB] gate (0) | 2019.07.06 |
Comments