Files
reverse-skills-max/research-what-we-did/rev_guide/p1.md

5.2 KiB
Raw Blame History

🩸 РЕВЕРС-ИНЖИНИРИНГ С НУЛЯ: ГАЙД 2026

Полный путь от нуля до самостоятельного анализа бинарников: база, инструменты, пайплайн, реверс через ИИ, материалы. Всё бесплатное или с free-версией.

🩸 ШАГ 1. БАЗА

Без этого инструменты бесполезны:

  • C — указатели, память, структуры, строки
  • Ассемблер x86-64 — регистры, стек, calling conventions, переходы
  • Compiler Explorer (https://godbolt.org/) — пишешь функцию на C, видишь её ассемблер. Лучший способ понять, что делает компилятор
  • Формат PE (https://learn.microsoft.com/windows/win32/debug/pe-format) — заголовки, секции, таблица импортов

Результат: свободно читаешь ассемблерный листинг простой функции.

🩸 ШАГ 2. ИНСТРУМЕНТЫ

Позже пригодятся: IDA Pro (https://hex-rays.com/) — эталонный декомпилятор Hex-Rays; Binary Ninja (https://binary.ninja/) — API для автоматизации; radare2 (https://github.com/radareorg/radare2) / rizin (https://github.com/rizinorg/rizin) + Cutter (https://github.com/rizinorg/cutter) — консольный стек.

🩸 ШАГ 3. ПРАКТИКА

  • crackmes.one (https://crackmes.one/) — задачи по реверсу, сложность 1–6
  • Порядок: 15–20 задач 1☆, затем 10–15 задач 2☆, затем 3☆
  • Осваиваются: поиск точки входа, паттерн проверки пароля, простые анти-отладочные приёмы
  • ROP Emporium (https://ropemporium.com/) — exploitation по шагам

Результат: самостоятельно разбираешь небольшой бинарь от запуска до ответа.

🩸 ШАГ 4. СИСТЕМА

  • pwn.college (https://pwn.college/) — бесплатные модули от ASU: ассемблер, основы RE, автопроверка, 15–25 задач на модуль
  • OpenSecurityTraining2 (https://p.ost2.fyi/) — реверс C++, символьное исполнение, отладчики, UEFI
  • RE-MA-Roadmap (https://github.com/x86byte/RE-MA-Roadmap) — roadmap от нуля до malware-аналитика

🩸 ШАГ 5. ПАЙПЛАЙН АНАЛИЗА БИНАРЯ

Порядок, по которому разбирают реальные сэмплы. Перед запуском чего-либо живого: виртуалка + снапшот, без общих папок и реальной сети.

  1. Триаж без запуска: DIE — упаковщик/компилятор; FLOSS (https://github.com/mandiant/flare-floss) — строки, включая обфусцированные; capa (https://github.com/mandiant/capa) — capabilities с маппингом на ATT&CK
  2. Распаковка: натив — x64dbg до OEP, дамп, IAT чинит Scylla (https://github.com/NtQuery/Scylla); .NET — de4dot-форк (https://github.com/kant2002/de4dot), разбор в dnSpyEx (https://github.com/dnSpyEx/dnSpy); без запуска — Qiling (https://github.com/qilingframework/qiling)
  3. Статика: Ghidra/IDA — декомпиляция, xrefs, переименование
  4. Динамика: отладчик для проверки гипотез; Frida (https://frida.re/) — хуки на функции, снятие конфигов
  5. Деобфускация: D-810 (https://gitlab.com/eshard/d810) — MBA и flattening в декомпиляторе IDA; эмуляция и трейсинг — Unicorn (https://github.com/unicorn-engine/unicorn), Qiling, angr (https://github.com/angr/angr)
  6. Поведение: FakeNet-NG (https://github.com/mandiant/flare-fakenet-ng) — перехват трафика; CAPEv2 (https://github.com/kevoreilly/capev2) — сэндбокс; Speakeasy (https://github.com/mandiant/speakeasy) — эмуляция малвари и драйверов без VM
  7. Диффинг версий: BinDiff (https://github.com/google/bindiff) / Diaphora (https://github.com/joxeankoret/diaphora) — что изменил вендор, где была дыра
  8. Выход: YARA-правило (https://github.com/VirusTotal/yara), IOC, отчёт

Шаг 6 — реверс через ИИ — во 2-м и 3-м сообщениях.

👻 иишко