커널 부팅 방법, 디버깅 방법, 보호기법 등 Kernel Exploit을 시작하는데 필요한 지식들은 완벽하게 습득했습니다. 이제부터는 실제로 exploit을 어떻게 작성하는지, 작성한 exploit을 어떻게 qemu에 올린 kernel에서 작동하게 할 것인지를 배워보겠습니다. qemu에서 실행 qemu 위에서 exploit을 작성 후 빌드, 실행하면 ...
[Pawnyable] Exploit 코드 컴파일 및 바이너리 전송
[Pawnyable] 리눅스 커널 보호기법
커널 exploit에 대한 대비책으로 리눅스 커널에는 보호기법들이 있습니다. 유저 영역의 보호기법 중 하나인 NX Bit처럼 하드웨어 수준에서의 보호기법도 존재하기 때문에, 몇가지 커널 보호기법에 대한 지식은 윈도우 커널 exploit에도 똑같이 적용이 가능합니다. 이 글에서 다루는 기법들은 커널만의 보호기법으로 Stack Canary와 같은 보호기...
pwninit tools
이번에 알게된 CTF에서 포너블을 풀때 매우 유용하게 쓸 수 있는 툴을 찾아서 설치 방법 및 간단한 세팅 방을 작성해보려고 합니다. pwninit이란 pwninit 명령어를 문제 바이너리가 있는 디렉토리에서 실행하면 미리 템플릿으로 만들어놓은 익스플로잇 코드를 기반으로 파이썬 파일이 만들어지고 만약 libc 파일이 있다면 해당 파일을 기반으로 ld ...
[Pawnyable] gdb로 커널 디버깅해보기
커널 exploit에 입문하기 어려운 가장 큰 원인은 디버깅 방법을 모른다는 것입니다. 이번 글에서는 gdb를 이용해 qemu 위에서 작동하는 리눅스 커널을 디버깅 하는 방법을 알아보겠습니다. 먼저 pawnyable의 연습문제 LK01 파일을 받아주세요. root 권한 취득 커널을 디버깅할 때 일반 사용자 권한이면 불편한 경우가 많습니다. 특히 커널이...
[Pawnyable] Kernel Exploit에 대해
커널 exploit 이란 ‘일반 바이너리 pwn은 공부했지만, 커널은 어려울 것 같다’ 라는 분들이 많습니다. 하지만 사실 커널 exploit에서는 경우에 따라 공격이 매우 간단합니다. 이 글에서는 일반 바이너리 exploit과 커널 exploit의 차이점, 환경 구축 등에 대해 설명합니다. 공격 대상 유저영역 exploit과 커널 exploit의 가...
[Dreamhack] Kind kid list Write up
코드 분석 int __fastcall __noreturn main(int argc, const char ** argv, const char ** envp) { char * v3; // rsi char * v4; // rdi __int64 v5; // rdx __int64 v6; // rcx __int64 v7; /...
[HackTheBox] Juggling facts
POST /api/getfacts HTTP/1.1 Host: 167.99.85.216:30988 Content-Length: 17 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.6099.216 Safari/53...
[HackTheBox] Wifinetic
쉘 획득 nmap 스캔 Anonymous 로그인이 허용된 것을 확인하고 FTP 서버에 접속해서 파일을 전부 받아왔습니다. ❯ nmap -sV -sC -Pn 10.10.11.247 Starting Nmap 7.80 ( https://nmap.org ) at 2024-01-25 09:20 KST Nmap scan report for 10.10.11.24...
[HackTheBox] knife
Shell 획득 포트 스캔 결과입니다. whatweb을 사용하여 스캔을 했을때 결과입니다. PHP 버전이 8.1.0-dev 인 것을 보고 취약점이 있는지 한번 검색해봤습니다. 해당 사이트에 있는 POC 코드를 실행시켜서 IP 주소를 입력해보니 RCE가 터졌습니다. 처음에는 Reverse Shell로 쉘을 획득하려고 했지만 원인 모를 이유...
[HackTheBox] Cap
포트 스캔을 했을때 21번(FTP), 22번(SSH), 80번(http)가 열려있는 것을 확인 했습니다. 웹사이트에 접속하고 Security Snapshot 페이지에 접속하니 /data/0 경로로 리다이렉트 됐습니다. 다운로드를 눌러보니 0.pcap 파일을 제공해줬습니다. 그래서 와이어 샤크로 열어보니 FTP 서버의 USER : nathan, ...