일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 러닝스칼라
- 인공지능
- php
- c++
- Linux
- 백엔드
- Scala
- 러닝 스칼라
- 경제
- Javascript
- hackerschool
- Web
- 딥러닝
- flask
- hacking
- BOF
- hackthissite
- 리눅스
- 챗GPT
- backend
- ChatGPT
- webhacking
- 웹해킹
- 파이썬
- Python
- mysql
- c
- deep learning
- BOF 원정대
- Shellcode
- Today
- Total
목록small buffer bof (2)
jam 블로그
문제 소스를 보자 [그림 1] goblin.c 소스 분석 1. buffer의 크기는 16 2. 콘솔의 입력을 받아 buffer에 저장 3. buffer 화면 출력 앞에서의 문제와는 다르게 인자값을 받지 않고 키보드의 입력을 직접 받는 문제이다. 우리가 문제를 풀기위한 과정을 알아보자. 0. bash2로 변경 1. shellcode 구하기 2. shellcode 환경변수에 등록 3. 환경변수의 주소값 구하기 4. bof 공격 앞에서의 문제들의 공격과정은 같다. 다만 4. bof 공격에서 약간 달라진다. 1~3 앞의 문제와 같기 때문에 자세한 설명은 생략합니다. [그림 2] 1~3 과정 4. bof 공격 [그림 3] bof 공격 (perl -e 'print "A"x20,"\x51\xff\xff\xbf"';t..
문제 소스를 봅시다. [그림 1] cobolt.c 소스 분석 1. buffer의 크기는 16 2. 인자값은 적어도 하나 이상 3. 첫번째 인자값을 buffer에 넣는다. 4. buffer를 뿌려준다. 우리가 해야할 일을 알아보자. 0. bash2 사용 (콘솔에서 bash2를 쳐줍니다.) 1. shellcode 구하기 2. shellcode를 환경변수에 올리기 3. 환경변수의 주소값 알기 4. bof 공격 사실상 gate에서 했던 방식 고대로 하면 됩니다. 이유는 우리는 shellcode를 버퍼에 넣는게 아닌 환경변수에 올려서 하기 때문입니다. 1. shellcode 구하기 gate때 썼던 shellcode를 고대로 사용합니다. "\x31\xc0\xb0\x31\xcd\x80\x89\xc3\x89\xc1\x..