CTF Workspace
Рабочая папка для решения задач с winpwn. Библиотека — в ../go_pwner/, не трогай.
Структура
workspace/
├── go.mod ← replace winpwn => ../go_pwner (не трогай)
├── template/ ← шаблон нового solve-скрипта
│ └── main.go
│
├── bof_basic/ ← стек overflow, базовый
├── task1_leak/ ← info leak → redirect (нет ASLR)
├── task2_rop/ ← BOF + ROP chain + DEP
├── task3_fmtstr/ ← format string (нет скомпилированного бинаря)
│
├── heap_lfh/ ← UAF + LFH grooming
├── heap_typemix/ ← UAF type confusion, без LFH
├── heap_overflow/ ← adjacent chunk overflow, NT Heap backend
├── heap_segment/ ← adjacent chunk overflow, Segment Heap
├── heap_info_leak/ ← OOB read + ASLR bypass + UAF
│
└── demos/ ← демо API winpwn, не задачи
├── pe_multitool/ ← checksec, IAT/EAT, ROP-сканер
├── shellcraft_winexec/ ← генерация PIC x64 shellcode
└── leak_msvcrt/ ← поиск system() + cmd.exe в msvcrt.dll
Каждая задача:
task1_leak/
├── main.go ← solve-скрипт, запускать отсюда: go run .
├── task1.exe ← бинарь-цель
├── flag.txt ← флаг (открывается целевым процессом)
└── src/
└── task1.c ← исходник задачи
Запуск
cd C:\tools\workspace\task1_leak
go run .
Новая задача
cd C:\tools\workspace
mkdir mynew
cd mynew
# скопируй бинарь: copy C:\path\to\chal.exe .
# скопируй шаблон: copy ..\template\main.go .
go run .
Документация
C:\tools\go_pwner\USAGE_RU.md— краткий справочник по-русскиC:\tools\go_pwner\USAGE.md— полный гайд на английском