- 방문자수
- HOT POST
전체 방문자
오늘 방문자
어제 방문자
Latest Story
-
Codegate 2024 Junior Prequal Writeup
이번에 코드게이트 Junior에 나가게 되었습니다. BoB 활동을 하느라 CTF를 1년동안 공부하지 못해서, 최근 4달간 엄청난 공부를 하였습니다. 그 결과, 예선에서 약 8~10시간 정도 투자해 8위로 본선에 진출 할 수 있었습니다. WinPwn은 조금 더 잡았으면 풀 수 있었을 것 같은데, 전 날 너무 못 자서 피곤해서 자버렸습니다 .. ㅠ 더 수련해 나가야겠습니다. I participated in CodeGate Junior this year. I didn't study CTF for a year because I was doing BoB activities, so I studied a lot in the last 4 months. As a result, I was able to advance to..
-
TBTL 2024 CTF - Pwn From Past ( 4 solved) writeup
Chall.cpp// Built using Borland C++ 3.0 -- still the best IDE produced by humankind.// //// bcc -v CHALL.CPP //#include int main() { char name[32]; FILE *input = fopen("input.txt", "rt"); FILE *output = fopen("output.txt", "wt"); if (!input) { printf("Error opening input file!"); return 1; } if (!output) { printf("Error opening input file!"); return 1; } fscanf(input, "%[^ ]s..
-
SeedSeeker
FuzzSeedSeeker서론Fuzzing은 소프트웨어의 보안 취약점을 발견하기 위한 자동화된 테스트 기법 중 하나입니다. 이 방법은 임의의 데이터(또는 “Fuzz")를 소프트웨어 입력으로 제공하여 예외, 충돌, 또는 예상치 못한 행동을 유발하는지 탐색합니다. 소프트웨어 개발 및 보안 연구 분야에서 널리 사용되는 Fuzzing은 시스템의 견고성을 향상시키고, 잠재적인 보안 위험을 사전에 식별하여 해결할 수 있는 효과적인 방법으로 인정받고 있습니다.Fuzzing 과정에서 'Seed'의 중요성은 어느정도일까요? Seed는 퍼징 과정에서 사용되는 초기 입력 값이나 데이터 셋을 의미합니다. 좋은 Seed는 Fuzzer가 더 깊이 있는 경로를 탐색하도록 하여 보다 효율적으로 취약점을 발견할 수 있게 합니다. 예를..
-
ComRaceConditionSeeker
서론 COM(Component Object Model)은 마이크로소프트에서 개발한 소프트웨어 아키텍처로, 다양한 소프트웨어 컴포넌트들이 서로 통신하고 데이터를 교환할 수 있게 하는 기술입니다. 윈도우 운영 체제에서 널리 사용되며, 개발자들이 모듈식 컴포넌트를 통해 애플리케이션을 빌드할 수 있도록 지원합니다. COM은 언어 독립적인 방식으로 설계되어 있어, 다양한 프로그래밍 언어로 작성된 컴포넌트들이 서로 상호 작용할 수 있습니다. COM의 주요 개념은 객체지향 프로그래밍의 원칙에 기반을 두고 있으며, 인터페이스와 구현의 분리를 통해 소프트웨어 컴포넌트의 재사용성과 유지보수성을 높입니다. COM 객체는 정의된 인터페이스를 통해서만 접근할 수 있으며, 이 인터페이스들은 고유한 식별자인 GUID(Global ..
-
CodeQL Summary
CodeQL What is CodeQL? 데이터 흐름 분석 및 오염 분석 등을 통하여 코드 오류와 품질 등을 검사하고, 취약점을 찾기 위해 개발 된 도구 FACT database를 기반으로 QL이라는 쿼리 언어를 사용하여 database 내에서 취약한 패턴을 쿼리하여 데이터화, 분석을 진행함. 변수나 함수, 클래스 선언 뿐 아니라 변수 내에 할당 된 값도 추적이 가 다중 언어를 지원 Why We Use CodeQL? 사람이 일일히 수동으로 해야하는 취약점 분석 과정을 신속하게 자동화할 수 있는 툴로 서, 업데이트 등의 사유로 코드가 업데이트 되었을 때도 몇 분만에 코드를 분석하여 잠재적 위험 요소를 확인할 수 있음. QL Language & QL Query CodeQL의 구조와 문법은 SQL 문법과 비슷..
-
2024 IRIS CTF Write UP - 35th place
한국인분들은 아래 KOREAN 부분부터 읽으시면 됩니다. English Hi, I'm part of the DeadSec team this time, and I solved 2 prob on the CTF in a hurry during the BOB project, and one question with a teammate. Even though I solved the 3 prob, I thought it would be good to keep a record of it. PWN Insanity Check (PWN) #include #include #include void rstrip(char* buf, const size_t len) { for (int i = len - 1; i >= 0; i--) ..
-
What Is Windows Search DB?
What Is Windows Search DB? Windows Search DB는 Windows 운영 체제에 내장된 검색 기능을 지원하는 데이터베이스이다. 이 데이터베이스는 파일, 폴더, 응용 프로그램, 설정, 문서 등과 같은 사용자의 컴퓨터에 저장된 데이터를 인덱싱하여 저장한 데이터베이스이다. Windows.EDB (Windows Search DB) 파일의 구조? EDB 파일의 구조? 데이터베이스 헤더: EDB 파일의 시작에 위치하며, 데이터베이스의 기본 정보와 구성을 포함함. 테이블: EDB 파일은 여러 테이블로 구성되는데 각 테이블은 레코드의 집합으로 구성되며, 특정 유형의 데이터를 저장함. 예를 들어, 파일, 폴더, 메일 등은 각각 다른 테이블에 저장됨. 레코드: 각 테이블에는 레코드가 포함되어 ..
-
2023 연말정산 / 2024 계획
한 동안 BOB 프로젝트를 하며 학교 시험 공부까지 병행하느라 글을 쓰지 못했습니다. BOB와 학교 공부 병행이 생각보다 어렵네요. 그나저나 2023년도 마무리까지 1달도 남지 않았습니다. 크리스마스까지는 12일 정도 남았는데, 개인적으로 크리스마스는 제게 꽤 의미있는 날입니다. 언젠가 시간이 되면 블로그 이름과 테마 선정같은 이유도 조금 풀어볼 예정입니다. 오늘은 2023년 4월에 계획했던 플랜들을 얼마나 이뤘는지 체크하고, 2024 계획을 초안만 짜보려 합니다. 2023 PLAN ✅ 하이퍼바이저 공부 / NPT EPT 후킹 공부 -> ..ing ✅ BOB 프로젝트 성공적 마무리 ✅ 써드파티에서 CVE 적어도 5개 이상 따보기 ✅ 해킹 대회에서 2등 이상 대회 실적 얻기 ✅ BOB 하기 ✅ 외국인 친구..
CTF story
-
Codegate 2024 Junior Prequal Writeup
이번에 코드게이트 Junior에 나가게 되었습니다. BoB 활동을 하느라 CTF를 1년동안 공부하지 못해서, 최근 4달간 엄청난 공부를 하였습니다. 그 결과, 예선에서 약 8~10시간 정도 투자해 8위로 본선에 진출 할 수 있었습니다. WinPwn은 조금 더 잡았으면 풀 수 있었을 것 같은데, 전 날 너무 못 자서 피곤해서 자버렸습니다 .. ㅠ 더 수련해 나가야겠습니다. I participated in CodeGate Junior this year. I didn't study CTF for a year because I was doing BoB activities, so I studied a lot in the last 4 months. As a result, I was able to advance to..
-
TBTL 2024 CTF - Pwn From Past ( 4 solved) writeup
Chall.cpp// Built using Borland C++ 3.0 -- still the best IDE produced by humankind.// //// bcc -v CHALL.CPP //#include int main() { char name[32]; FILE *input = fopen("input.txt", "rt"); FILE *output = fopen("output.txt", "wt"); if (!input) { printf("Error opening input file!"); return 1; } if (!output) { printf("Error opening input file!"); return 1; } fscanf(input, "%[^ ]s..
-
2024 IRIS CTF Write UP - 35th place
한국인분들은 아래 KOREAN 부분부터 읽으시면 됩니다. English Hi, I'm part of the DeadSec team this time, and I solved 2 prob on the CTF in a hurry during the BOB project, and one question with a teammate. Even though I solved the 3 prob, I thought it would be good to keep a record of it. PWN Insanity Check (PWN) #include #include #include void rstrip(char* buf, const size_t len) { for (int i = len - 1; i >= 0; i--) ..
-
2023 Hacking Championship WriteUp - 2nd place
ENGLISH 1. Rockstar There are 72 functions, and we don't need to do the inverse operation. The first part of the flag is always 'flag{' and we only need to know the first 8 bytes to get the rest very quickly 2. Savage Fibonacci sequences can be optimized with DP 3. Crispy Chicken Attack (CCA) This problem is solvable if we know r. Since we can't decrypt flag directly, we can decrypt flag by mult..
-
2023 JBU CTF WriteUP
ENGLISH Recovery 802.11 After extracting the key with AirCrack, enter it into wireshark Decrypt Key and you should see something like this double canary Since one of the double canaries is on top of the buf, we only need to leak the real one with a put. The stack structure is Double Canary -> Buf -> Real Canary. from pwn import * e = ELF('./double_canary') libc = ELF('./libc.so.6') #p = process(..