# 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` — полный гайд на английском