OSCP/시험대비

버퍼오버플로우

우와해커 2020. 5. 4. 15:48

2020/07/15 - TryHackme gatekeeper.exe

- 퍼징을 테스트할 때, 마지막에 라인피드 문자열이 필요하다. 문자열 끝에 라인피드, \r\n를 붙여주지 않으면 서버측에서는 아직 클라이언트의 데이터 송신이 끝나지 않았다고 판단하여 계속 대기하게 된다.

(이것은 프로그램마다 다르다, 라인피드가 없어도 자체적으로 붙여서 처리하도록 구현된 프로그램도 있다.)


- EXITFUNC=thread 같은 옵션은 기본 익스플로잇부터 먼저 성공시키고 여유가 있을때 추가하도록한다. 

 (옵션 붙이면 안되는 APP도 존재)

- 버퍼오버플로우 트리거 이후 쉘 스페이스가 충분하지 않기 때문에 한번 더 생각해보아야 하는 문제

- 쉘을 페이로드 어디에 위치 시킬 것이며 어떻게 EIP를 컨트롤하여 트리거 할 것인가? => 시험범주에서 살짝 벗어남

add jmp, 12; jmp esp

2020/07/18 - OSCP crossfire

badchars => 잘, 모르겠으면 쉘코드 생성시 일반적인 것들 다 빼버리자. \x0a\0d\00 등...

Immunity debugger, EDB: 다시 실행하려면 디버거내 X버튼, Debug kill 클릭 후 컨트롤+F2

프로그램 자체를 꺼버리면 재실행시 기존 프로세스가 남은채로 새로운 프로세스가 생성됨

 

Common Bad Characters

0x00     NULL (\0)
0x09     Tab (\t)
0x0a     Line Feed (\n)
0x0d     Carriage Return (\r)
0xff     Form Feed (\f)

2020/07/19 - vulnserver.exe

- 라인피드 필요없음

- 쉘 코드 전에 NOP(\x90) 코드를 붙여줄 필요성을 다시 느낌

- 스파이크를 사용하여 퍼징

http://sh3llc0d3r.com/vulnserver-fuzzing-with-spike/


2020/07/21 - PCMan.exe ftpd

- 라인피드 필요함

- sLMail과 비슷한 프로토콜, 퍼징 트리거 부분이 어플리케이션 마다 다르다는 것을 알 수 있다.

  slMail 같은 경우 패스워드 부분이 BOF에 취약했지만,

  PCMan은 slMail과 다르게 아이디 부분에서 BOF가 트리거 된다.

- 취약 모듈의 jmp esp의 주소에 전부 널바이트가 포함 되어있었다.

0x0043410d  : "\xff\xe4" 
0x0043d35b  : "\xff\xe4" 
0x0043da3b  : "\xff\xe4"

 

jmp esp 방법 이외에 다른 방법으로 EIP를 통제할 수 있는 기법을 찾아야한다.

시험의 범주에서 벗어나기 때문에 여기서 마침.

 

 

 

 

MiniShare

 

 

 

 

 

 

 

 

 

 

버퍼오버플로우

https://www.runesecurity.com/buffer-overflow-32-bit-example
https://toastersecurity.blogspot.com/2016/10/fuzzing-and-exploiting-buffer-overflows.html
https://github.com/justinsteven/dostackbufferoverflowgood
https://www.vortex.id.au/2017/05/pwkoscp-stack-buffer-overflow-practice/
https://infoinsecu.wordpress.com/2019/08/13/oscp-study-guide-buffer-overflow/
https://forum.hackthebox.eu/discussion/753/oscp-buffer-overflow-practice
https://medium.com/@johntroony/a-practical-overview-of-stack-based-buffer-overflow-7572eaaa4982

vulnserver 
https://veteransec.com/2018/09/10/32-bit-windows-buffer-overflows-made-easy/
https://medium.com/@Z3R0th/a-simple-buffer-overflow-using-vulnserver-86b011eb673b
https://anubissec.github.io/Vulnserver-Exploiting-TRUN-Vanilla-EIP-Overwrite/#

http://sh3llc0d3r.com/vulnserver-trun-command-buffer-overflow-exploit/

https://github.com/saadibabar/MiniShare-Buffer-Overflow/blob/master/minisharebof.py

 

Immunity debugger 한글 설명
http://i5on9i.blogspot.com/2012/08/immunity-debbuger-1.html

 

 

'OSCP > 시험대비' 카테고리의 다른 글

[OSCP EXAM GUIDE] SECTION 1: EXAM REQUIREMENTS  (0) 2020.06.29
명령어 정리2  (0) 2020.06.12
파워 쉘 for 침투테스트-1  (0) 2020.04.16
명령어 정리 1  (0) 2020.03.24
PENETRATION TESTING WITH KALI LINUX REPORTING  (0) 2020.02.16