Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 |
Tags
- hacking
- 딥러닝
- Javascript
- flask
- 챗GPT
- hackthissite
- 웹해킹
- 인공지능
- 백엔드
- php
- backend
- Python
- ChatGPT
- hackerschool
- deep learning
- c++
- BOF
- 리눅스
- mysql
- 러닝스칼라
- c
- Web
- Scala
- 경제
- webhacking
- 러닝 스칼라
- Linux
- 파이썬
- BOF 원정대
- Shellcode
Archives
- Today
- Total
jam 블로그
[bof 원정대] troll -> vampire (check 0xbfff) 본문
728x90
다음 문제의 소스입니다.
문제를 푸는 과정입니다.
1. nop의 갯수를 크게하여 argv[1]의 주소값 구하기
2. bof 공격
[그림 3] bof 공격
주소만 벗어나게 하여 공격하면 간단하게 됩니다.
[그림 1] vampire.c
소스 분석
1. buffer의 크기는 40
2. 인자값은 적어도 하나 이상
3. 첫번째 인자값 48번째는 \xbf 이어야 합니다.
4. 첫번째 인자값 47번째는 \xff 아니어야 한다.
소스 분석
1. buffer의 크기는 40
2. 인자값은 적어도 하나 이상
3. 첫번째 인자값 48번째는 \xbf 이어야 합니다.
4. 첫번째 인자값 47번째는 \xff 아니어야 한다.
문제를 푸는 과정입니다.
0. bash2
1. nop의 갯수를 크게하여 argv[1]의 주소값 구하기
2. bof 공격
[그림 2] 공격 값
argv[1]의 길이 제한이 없기 때문에 47번째에 \xfe 48번째에 \xbf로 써 넣은 다음 그다음 충분한 \x90값을 주어서 shellcode를 실행하게 합니다.
argv[1]의 길이 제한이 없기 때문에 47번째에 \xfe 48번째에 \xbf로 써 넣은 다음 그다음 충분한 \x90값을 주어서 shellcode를 실행하게 합니다.
2. bof 공격
[그림 3] bof 공격
주소만 벗어나게 하여 공격하면 간단하게 됩니다.
'해킹 > 시스템' 카테고리의 다른 글
[bof 원정대] skeleton -> golem (stack destroyer) (0) | 2012.03.22 |
---|---|
[bof 원정대] vampire -> skeleton (argv hunter) (0) | 2012.03.21 |
[bof 원정대] orge -> troll (check argc, argv hunter) (0) | 2012.03.20 |
[bof 원정대] darkelf -> orge (check argv[0]) (0) | 2012.03.19 |
[bof 원정대] wolfman -> darkelf (egghunter, buffer hunter, check length of argv[1]) (0) | 2012.03.19 |
Comments