Skip to content
KitploitKITPLOIT
ИнструментыЭксплойтыБлог
Log in
Отправить
ИнструментыЭксплойтыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

ЛентыКонтактыКонфиденциальность© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
Win32_Offensive_Cheatsheet — Win32 и техники злоупотребления ядром для пентестеров | Kitploit
Инструменты/GitHubGitHub/matthieu-hackwitharts/win32_offensive_cheatsheet
Механизмы персистентностиЭксплуатацияОбход IDS/IPSОбратная инженерияПост-эксплуатацияТестирование на ПроникновениеАнализ Бинарных ФайловОбучение и ОбразованиеRed Teaming
Подобранные Ресурсы
Разработка Полезной Нагрузки
GitHubmatthieu-hackwitharts/win32_offensive_cheatsheet

Win32_Offensive_Cheatsheet

Win32 и техники злоупотребления ядром для пентестеров

Репозиторий
981136173 лет назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

Оффенсивная шпаргалка по Win32

Техники злоупотребления Win32 и ядром для пентестеров и red-team-специалистов от @UVision и @RistBS

Режим разработчика включён, открыт для любой помощи :)

  • Документация по Windows Binary
    • Структура PE
    • Заголовки PE
    • Разбор PE
    • Таблица адресов экспорта (EAT)
    • Разрешение адреса функции
    • Таблица адресов импорта (IAT)
      • Разбор IAT
    • Таблица поиска импорта (ILT)
    • Включение привилегии SeDebug
  • Выполнение бинарного файла
    • Классическое выполнение шеллкода
    • Выполнение DLL
    • RAW-файл в PE
  • Техники внедрения кода
    • Внедрение через CreateRemoteThread
    • Process Hollowing
    • Техника очереди APC
    • Early Bird
    • Рефлексивное внедрение DLL
    • Внедрение DLL
    • Process Doppelganging
    • Волокна (Fibers)
    • CreateThreadPoolWait
    • Перехват потока (Thread Hijacking)
    • Внедрение кода через MapView
    • Module Stomping
    • Function Stomping
  • Техники хукинга
    • Inline-хукинг
    • Хукинг IAT
  • Техники обхода реверс-инжиниринга
    • Обфускация вызовов и строк
    • Ручное разрешение функций
    • Хеширование Win32 API
  • Обход EDR/Endpoint
    • Прямой системный вызов
    • Языки высокого уровня
    • Патч inline-хуков
    • Обнаружение хуков
    • Патч ETW
    • Обход песочницы
    • Обход отладки
    • Техника VirtualProtect
    • Снятие хуков с помощью свежей копии
    • Hell's Gate
    • Heaven's Gate
    • Спуфинг PPID
    • Колбэк инструментирования процесса
    • Шифрование кучи
    • Обфускация сна
  • Основы программирования драйверов
    • Общие концепции
    • Таблица диспетчеризации системных служб (SSDT)
    • Точка входа драйвера
    • Ввод-вывод)
    • Взаимодействие с драйвером
    • Подпись драйверов (Microsoft)
    • Пользовательские колбэки (ObRegisterCallbacks)
  • Атакующее программирование драйверов
    • Патч колбэка ядра
    • Патч защищённого процесса
  • Использование Win32 API для повышения OPSEC
    • Персистентность
      • Планировщик заданий
    • Спуфинг командной строки
  • Разное
    • Соглашение о вызовах x64
    • Косвенное выполнение
      • Обход CFG с помощью SetProcessValidCallTargets

  • Вредоносные/сложные техники
    • Случай Emotet: спуфинг PPID через WMI
    • Техника скрытых файлов вредоноса Zeus
    • Техника хукинга кейлогера SpyEye
    • Самая нелепая остановка вредоноса (WannaCry)

Документация по Windows Binary

Полезные инструменты и сайты/книги/шпаргалки

  • 🔹 https://github.com/RistBS/Awesome-RedTeam-Cheatsheet/ (Очень хорошая шпаргалка)
  • 🔹 https://www.ired.team/ (Отличная шпаргалка для red team с прекрасными заметками по внедрению кода)
  • 🔹 https://undocumented.ntinternals.net/ (Недокументированные функции NT)
  • 🔹 https://docs.microsoft.com/en-us/windows/win32/api/ (Официальная документация Microsoft)
  • 🔹 Windows Kernel Programming - Pavel Yosifovich
  • 🔹 https://research.checkpoint.com/ (Очень интересные материалы об обходе, антиотладке и многом другом)
  • 🔹 https://www.vx-underground.org/ (Отличный контент о разработке вредоносов и реверсе)

Структура PE

Заголовки PE

  • DOS_HEADER : Первый заголовок PE, содержит сообщение MS DOS ("This programm cannot be run in DOS mode...."), MZ-заголовок (магические байты для идентификации PE) и немного заглушки.
  • IMAGE_NT_HEADER : Содержит сигнатуру PE-файла, заголовок файла и опциональный заголовок
  • SECTION_TABLE : Содержит заголовки секций
  • SECTIONS : Не заголовок, но полезно знать: это секции PE

Подробнее : https://www.researchgate.net/figure/PE-structure-of-normal-executable_fig1_259647266

Разбор PE

Простой разбор PE для получения абсолютных адресов IAT и ILT:

  • Получить базовый адрес : GetModuleHandleA(NULL);
  • PIMAGE_DOS_HEADER = базовый адрес, DOS-заголовок
  • PIMAGE_NT_HEADER = BaseAddress+PIMAGE_DOS_HEADER.e_lfnanew (RVA NT_HEADER)
  • IMAGE_DATA_DIRECTORY = OptionnalHeader.DataDirectory[IMAGE_DIRECTORY_ENTRY_IMPORT] из PIMAGE_NT_HEADER
  • IMAGE_IMPORT_DIRECTORY = IMAGE_DATA_DIRECTORY.VirtualAddress (RVA структуры IMAGE_IMPORT_DIRECTORY)
  • IMAGE_IMPORT_DESCRIPTOR = BaseAddress + IMAGE_IMPORT_DIRECTORY.VirtualAddress (RVA структуры IMAGE_IMPORT_DESCRIPTOR)
  • Абсолютный адрес IAT : IMAGE_IMPORT_DESCRIPTOR.FirstThunk (RVA IAT) + BaseAddress
  • Абсолютный адрес ILT : IMAGE_IMPORT_DESCRIPTOR.OriginalFirstThunk (RVA ILT) + BaseAddress

Таблица адресов экспорта (EAT)

EAT разрешает все функции, экспортируемые PE, а также разрешает DLL. Она определена в структуре IMAGE_EXPORT_DIRECTORY:```c
typedef struct _IMAGE_EXPORT_DIRECTORY { DWORD Characteristics; DWORD TimeDateStamp; WORD MajorVersion; WORD MinorVersion; DWORD Name; // name of DLL DWORD Base; // first ordinal number DWORD NumberOfFunctions; // number of entries in EAT DWORD NumberOfNames; // number of entries in (1) (2) DWORD AddressOfFunctions; // RVA EAT and contains also RVA of exported functions DWORD AddressOfNames; // Pointer array contains address of function names DWORD AddressOfNameOrdinals; // Pointer array contains address of ordinal number of functions (index in AddressOfFunctions) } IMAGE_EXPORT_DIRECTORY, *PIMAGE_EXPORT_DIRECTORY;

Обратите внимание, что EAT определена в DLL, а не в «настоящем» PE (PE будет использовать EAT загруженной DLL для разрешения указателей на функции, которые он хочет использовать).
 
### Определение адреса функции
Скачать инструмент