Format String Bug (FSB) - Basic
예전에 동아리에서 강의하던 PPT를 참고해서, 포맷 스트링 버그 취약점 관련해서 정리를 한 번 해 보았다. 나름대로 포맷 스트링 버그의 기초를 잡기에는 충분한 내용을 다뤘다고 생각하니, 이제 배우기 시작하는 사람들에게 많은 참고가 되었으면 합니당. (_ _) 그럼 바로 시작해보자! 0. What is Format String? 포맷 스트링 버그(...
예전에 동아리에서 강의하던 PPT를 참고해서, 포맷 스트링 버그 취약점 관련해서 정리를 한 번 해 보았다. 나름대로 포맷 스트링 버그의 기초를 잡기에는 충분한 내용을 다뤘다고 생각하니, 이제 배우기 시작하는 사람들에게 많은 참고가 되었으면 합니당. (_ _) 그럼 바로 시작해보자! 0. What is Format String? 포맷 스트링 버그(...
Fuzzing101은 Fuzz testing(or Fuzzing)에 관한 실습을 할 수 있도록, 총 10개의 Exercise를 꾸려놓은 레포지토리입니다. AFL++을 다루며, Xpdf부터 V8까지 다양한 소프트웨어에서 퍼징을 돌리고, 취약점을 찾아보는 실습을 수행할 수 있습니다. 모든 Exercise를 수행할 수 있을지는 모르겠지만, 오늘은 그 첫...
올해 1월부터 Fuzzing 관련 프로젝트를 시작하면서, 예전에 BoB 과제로 받았으나 전부 읽지는 못했던 AFL++ 관련 논문을 읽었다. 아쉬운 영어 실력이지만 내가 이해한 내용을 정리하면서 읽었는데, 영어 논문을 읽는데 버거운 사람들에게 도움이 되었으면 하는 마음으로 이를 공유하고자 한다. 논문의 출처는 다음과 같다. Andrea Fioraldi...
책을 읽고 나서 이 책을 읽어 보니까 지도 교수와 토론하며 연구를 주도해야 하는 대학원 생활의 모습이, BoB 멘토와 토론하며 BoB 팀 프로젝트를 하는 것과 비슷하다는 생각이 들었다. 그래서, 꼭 대학원에 가지 않더라도 BoB 팀 프로젝트를 하기 이전에, 읽어 보면 좋은 책인 것 같다. 지도 교수가 대학원생의 논문을 써 주는 것이 아니고, 대학원생...
수고했다! 다음엔 더 잘해보자~ Pwnable pppr riscy Super mario Web Imageium Reversing & Misc DocsArchive Maze Adventure ...
리버싱이랑 포렌식, 그리고 미스크에 진심이었던 CTF였다고 생각한다. 내가 푼 거에 대해서만 라이트업을 써 보려고 한다. Pwnable something something win Arch : amd64-64-little RELRO : Partial RELRO Stack : No Canary found NX : NX enabled ...
컴퓨터의 부팅 과정에 대해 이해해 보자. 부팅은 PC가 켜진 후에 OS가 실행되기 전까지 수행되는 일련의 작업 과정을 의미한다. 부팅 과정에 수행하는 작업에는 프로세서 초기화(멀티코어 관련 처리 포함), 메모리와 외부 디바이스 검사 및 초기화, 부트 로더를 메모리에 복사하고 OS를 시작하는 과정 등이 포함된다. 1. Power 누르기 Cr...
vmlinux와 bzImage에 대해 이해해 보자. 1. vmlinux vmlinux는 압축되지 않은 커널 이미지를 ELF 형식으로 담고 있는 정적 링크된 실행 파일이라서, 사실상 커널 그 자체라고 할 수 있다. 이 파일은 심볼이나 재배치 정보가 살아 있어서, 커널 디버깅 시에 유용하게 사용할 수 있다고 한다. 그러나, 이 파일만으로는 컴퓨터를...
3월 26일에 있었던 LINE CTF에 Security Factorial의 이름으로 참가하였고 18등을 하였다! 나는 call-of-fake 한 문제를 SDJ 형이랑 같이 풀었다. 문제 분석 이 문제는 C++로 짜였고, C++ 하면 객체지향이다. 그런데, 이 문제에서 쓰이는 클래스들을 모두 분석하기에는 그 양이 방대해서, 동적 분석을 진...
전형적인 Use-After-Free(UAF) 문제이다. 그러나, UAF가 커널에서 발생한다. 문제 분석 #!/bin/bash qemu-system-x86_64 \ -initrd rootfs.cpio -kernel bzImage \ -append 'console=ttyS0 root=/dev/ram oops=panic panic=1' \ -en...