CTF

    [2024 HCTF] Forensic 문제 풀이

    한양대에서 개최한 HCTF에 참가했다. 포렌식 분야는 2문제가 출제되었다. writeuppcap 파일이 제공되며, 패킷에서 pdf를 추출할 수 있다. write up 파일으로 보이지만, CONFIDENTIAL 문자열로 아래 부분이 가려져 있다.docs 파일을 pdf로 만든 것으로 보인다. 다시 docs 파일로 만들어보자.  PDF를 Word로 변환: 무료 온라인 변환 툴 | Adobe Acrobat간단한 온라인 툴을 사용하여 PDF를 Word로 변환하세요. 무료로 PDF를 Word로 변환해 보세요.www.adobe.com 레이어가 분리된다. 삭제해보자. 숨겨져있던 플래그를 확인할 수 있다. 느낀점misc 느낌의 문제였던 것 같다.   hacked by usbusb에서 특정 악성 파일을 복사해서 실행했다고..

    [2024] 제 5회 JBU CTF Writeup

    보호되어 있는 글입니다.

    [Dreamhack] validator-revenge

    보호되어 있는 글입니다.

    [Hspace CTF] File Manager

    보호되어 있는 글입니다.

    [2023 JBU CTF] GPS Tracking write-up

    분야 : Forensic 💡 2023 JBU CTF에서 출제한 문제에 대한 write-up이다. 🧐 문제 문제명 : GPS Tracking prob1.dat 파일이 주어진다. 해당 파일을 HxD툴로 열어보면, 규칙적으로 데이터가 저장됨을 추측할 수 있다. 문제와 함께 봤을 , 규칙적으로 위치 정보를 담고 있음을 알 수 있다. 해당 장소들의 플러스 코드를 조합하여 플래그를 획득하라고 한다. 플래그 형식 flag = '' for place in places: flag += plus_code[:-2] -> scpCTF{flag} 플래그 형식은 위와 같다고 한다. .dat 파일의 규칙을 찾아서 위치를 찾고, 플러스 코드로 마지막 두글자씩 연결하면 문제가 해결된다. 💡 Hint `dms` 표현 방식에서 `seco..

    [2023 JBU CTF] solve it write-up

    분야 : Reversing 💡 2023 JBU CTF에서 출제한 문제에 대한 write-up이다. 🧐 문제 문제명 : solve it 힌트 : 문제 오류가 있어서 문의를 했더니, 나보고 직접 수정하라고 한다. 이게 가능해? 가짜 문제들을 모두 풀면 fake flag가 나온다. 진짜 플래그를 확인하기 위해서는, 해당 exe파일이 pyinstaller로 만들어짐을 인지하고, 이를 디컴파일 하면 소스코드를 확인할 수 있고 플래그를 찾을 수 있다. 🚨 가짜 문제 목록 self.questions = [ { 'question': "Q1. 웹 해킹 기법이 아닌 것은?", 'choices': [ "SSTI", "CSP", "SSRF", "CSRF", "SQLi" ], 'correct_choice': "CSP", }, ..

    [2023 JBU CTF] donation write-up

    분야 : Pwnable 💡 2023 JBU CTF에서 출제한 문제에 대한 write-up이다. 🧐 문제 문제명 : donation 캔디를 구매할 때 정수 언더플로우가 발생함을 인지하고, 이를 통해 플래그를 구매하는 문제이다. 위 구성이 문제파일로 제공된다. 로컬에서 도커 컨테이너를 올려 익스플로잇을 진행하고, 동일한 페이로드를 서버에 전송하면 실제 문제 플래그를 획득할 수 있다. 이 문제는 c파일이 제공된다. donation.c #include #include #include #include uint16_t your_money = 0; uint16_t dona_money = 0; void get_flag() { FILE *f = fopen("/home/UF/flag", "r"); char buf[256]..

    [2023 JBU CTF] ret2 write-up

    분야 : Pwnable 💡 2023 JBU CTF에서 출제한 문제에 대한 write-up이다. 🧐 문제 문제명 : ret2 특정 주소를 free할 수 있다. bins의 원하는 주소를 넣고, malloc으로 넣었던 주소를 할당받을 수 있다. 위 구성이 문제파일로 제공된다. 로컬에서 도커 컨테이너를 올려 익스플로잇을 진행하고, 동일한 페이로드를 서버에 전송하면 플래그를 획득할 수 있다. 🧐 분석 위와 같은 보호 기법이 걸려있다. 바이너리를 분석해보자. 🧐 main 함수 분석 int __cdecl main(int argc, const char **argv, const char **envp) { int v4; // [rsp+Ch] [rbp-34h] BYREF char buf[40]; // [rsp+10h] [r..