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

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

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

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

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

Категории

Все категории
Loading categories
Инструменты/GitHubGitHub/iss4cf0ng/ironpe
Криминалистика памятиЭксплуатацияОбратная инженерияШелл-кодАнализ Бинарных ФайловОбучение и ОбразованиеРазработка Полезной НагрузкиЭксплуатация Бинарных Файлов
GitHubiss4cf0ng/ironpe

IronPE

Rust-based Windows PE manual loader, отображающий и выполняющий x86/x64 исполняемые файлы из памяти, демонстрирующий поведение внутреннего загрузчика и структуру PE для образовательных исследований.

Репозиторий
1241946 месяцев назадПроверено Kitploit

Популярное

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

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

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

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

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

IronPE — Минимальный ручной загрузчик Windows PE, написанный на Rust.

Реализация загрузчика PE на Rust / Ручное отображение (Manual Mapping)

status language license Release

IronPE — это минимальный ручной загрузчик Windows PE, написанный на Rust, поддерживающий PE-файлы архитектуры x86 и x64.

Этот проект является перереализацией на Rust моего предыдущего проекта dotNetPELoader, в котором был реализован ручной загрузчик PE на C#.

Цель IronPE — исследовать, как Windows внутренне загружает переносимые исполняемые файлы (PE), и продемонстрировать, как этот процесс может быть реализован на Rust.


Вааааааа!

Если вы находите этот проект полезным или познавательным, будем признательны за ⭐!

Отказ от ответственности

Этот проект предназначен только для образовательных и исследовательских целей.

Он создан, чтобы помочь понять:

  • Внутреннее устройство Windows PE
  • Техники ручной загрузки
  • Концепции обратной разработки

Возможности

  • Ручная загрузка PE
  • Отображение секций
  • Базовые релокации
  • Разрешение импорта
  • Выполнение PE из памяти
  • Поддержка PE x86 и x64

Предыстория

Этот проект был вдохновлён моей предыдущей реализацией:

  • dotNetPELoader (C#)

В том проекте я реализовал загрузчик PE с использованием .NET и WinAPI.
IronPE переписывает ту же концепцию на Rust, который обеспечивает лучшую безопасность памяти, сохраняя при этом доступ к низкоуровневому Windows API.

Цель этого проекта — образовательная, чтобы лучше понять:

  • Структуру PE-файлов
  • Поведение загрузчика Windows
  • Техники ручного отображения PE

Как это работает

IronPE выполняет следующие шаги для выполнения PE-файла из памяти:

  1. Чтение PE-файла в память
  2. Разбор заголовков PE
  3. Выделение памяти с помощью VirtualAlloc
  4. Копирование заголовков и секций PE
  5. Применение базовых релокаций
  6. Разрешение импорта с помощью LoadLibrary и GetProcAddress
  7. Передача управления на оригинальную точку входа (OEP)

Этот процесс имитирует поведение загрузчика Windows PE.

PE x64 не может быть загружен загрузчиком x86, и наоборот.

Сборка

Требования:

  • Rust (cargo, rustc)
  • Windows

Сборка проекта:

root@kitploit:~
cd IronPE
build.bat

Использование

root@kitploit:~
IronPE.exe --coffee
IronPE.exe --x86 <x86_pe_file>
IronPE.exe --x64 <x64_pe_file>

Пример:

root@kitploit:~
IronPE.exe --x86 Win32\mimikatz.exe
IronPE.exe --x64 x64\mimikatz.exe

Демонстрация (запуск mimikatz)

x86


x64


Несовместимость загрузчика и архитектуры PE (Ошибка)

Скачать инструмент