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

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

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

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

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

Категории

Все категории
Loading categories
PELoader — PE loader с различными техниками инъекции shellcode | Kitploit
Инструменты/GitHubGitHub/hagrid29/peloader
ЭксплуатацияШелл-кодПост-эксплуатацияАнализ вредоносных программАнализ Бинарных ФайловRed TeamingРазработка Полезной Нагрузки
GitHubhagrid29/peloader

PELoader

PE loader с различными техниками инъекции shellcode

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

Популярное

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

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

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

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

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

PELoader

PELoader реализует различные техники инжекции шеллкода и использует библиотеку libpeconv для загрузки зашифрованных PE-файлов вместо инжекции шеллкода в удалённый поток.

Реализованы следующие техники:

  • Module Stomping (LoadLibrary)
  • Module Stomping (NtMapViewOfSection) (PoC)
  • Transacted Hollowing (PoC)
  • Ghostly Hollowing (PoC)
  • Herpaderply Hollowing (PoC)
  • NtMapViewOfSection (RWX-RW-RX)
  • NtAllocateVirtualMemory (RW-RX)

Благодарности: большая часть моей работы основана на скриптах PoC от @hasherezade.

Тестирование

PELoader был протестирован на Windows 10 с Cortex XDR / SentinalOne / Windows Defender / CrowdStrike, при этом Windows Defender и CrowdStrike обнаружили технику Transacted Hollowing. Характеристики каждой техники были протестированы с помощью инструмента сканирования памяти Moneta от @forrest-orr.

Module Stomping (LoadLibrary)

Вызов LoadLibrary для загрузки легитимной DLL. Перезапись DLL полезной нагрузкой.

Преимущества:

  • полезная нагрузка отображается как MEM_IMAGE, что выглядит легитимно для EXE или DLL
  • имитация легитимной DLL
  • секции отображаются с исходными правами доступа (без RWX)

cdll

Module Stomping (NtMapViewOfSection)

Вызов NtCreateSection для создания объекта отображения файла (PAGE_READONLY) для легитимной DLL и вызов NtMapViewOfSection для отображения её в текущий процесс. Перезапись DLL полезной нагрузкой.

Преимущества:

  • полезная нагрузка отображается как MEM_IMAGE, что выглядит легитимно для EXE или DLL
  • имитация легитимной DLL
  • секции отображаются с исходными правами доступа (без RWX)
  • не привязана к списку модулей (невидима для Module32First/Module32Next)

Недостатки:

  • не привязана к списку модулей (проверьте «Missing PEB module» в результатах сканирования Moneta ниже)

mdll

Ссылка на PoC от @hasherezade.

Transacted Hollowing

Гибрид между Process Hollowing и Process Doppelgänging. Создание «невидимого» файла в рамках транзакции NTFS и запись полезной нагрузки в файл. Отображение секции в текущий процесс и её выполнение.

Преимущества:

  • полезная нагрузка отображается как MEM_IMAGE
  • секции отображаются с исходными правами доступа (без RWX)
  • фиктивный файл не обязательно должен существовать

Недостатки:

  • обнаружение при мониторинге активности TxF

txf

Ghostly Hollowing

Гибрид между Process Hollowing и Process Ghosting. Создание файла в состоянии ожидания удаления и запись полезной нагрузки в файл. Отображение секции в текущий процесс и её выполнение.

Преимущества:

  • полезная нагрузка отображается как MEM_IMAGE
  • секции отображаются с исходными правами доступа (без RWX)
  • избегает «System Idle Process» без пути к образу (IOC для process ghosting)

Недостатки:

  • фиктивный файл создаётся на диске

ghost Ссылка на PoC от @hasherezade.

NtMapViewOfSection (RWX-RW-RX)

Вызов NtCreateSection для создания секции памяти (RWX). Вызов NtMapViewOfSection для отображения представления в текущий процесс (RWX). Вызов VirtualProtect для изменения защиты на RW. Копирование шеллкода в отображённую секцию. Изменение защиты на RX и выполнение.

Преимущества:

  • полезная нагрузка отображается как MEM_MAPPED, чтобы избежать MEM_PRIVATE, что часто встречается в вредоносном ПО

Недостатки:

  • установка страницы памяти в защиту RWX на начальном этапе
  • аномальная память отображённого EXE с защитой RX

map

NtAllocateVirtualMemory (RW-RX)

Вызов NtAllocateVirtualMemory для выделения памяти (RW). Копирование шеллкода в память. Изменение защиты на RX и выполнение.

Преимущества:

  • избегает страницы памяти RWX

Недостатки:

  • размещение шеллкода в странице памяти частного типа MEM_PRIVATE
  • аномальная память частного EXE с защитой RX

priv

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

AES шифрование полезной нагрузки

Преобразование PE-файла в шеллкод с помощью pe_to_shellcode и шифрование с помощью PELoader

root@kitploit:~
cmd> .\pe2shc.exe mimikatz.exe
Reading module from: mimikatz.exe
[WARNING] This is a console application! The recommended subsystem is GUI.
[+] Saved as: mimikatz.shc.exe
cmd> set hagrid=enc mimikatz.shc.exe
cmd> .\PELoader.exe
argument: enc mimikatz.shc.exe
Encrypting File

Выполнение PE

Установка аргумента в переменную окружения «hagrid» и выполнение PELoader

root@kitploit:~
cmd> set hagrid=cdll mimikatz.shc.exe.enc
cmd> .\PELoader.exe  version
argument: cdll mimikatz.shc.exe.enc
Classic DLL Hollowing
[*] target dll: C:\WINDOWS\system32\aadtb.dll
[*] implant dll: mimikatz.shc.exe.enc
[*] Loading the DLL (using LoadLibary, classic DLL hollowing)...
[*] Overwriting the mapping
[*] Module Overloading finished...
[*] Executing Implant's Entry Point: 7ff8cf9d7578
[*] Executing Implant as EXE

  .#####.   mimikatz 2.2.0 (x64) #19041 Aug 10 2021 17:19:53
 .## ^ ##.  "A La Vie, A L'Amour" - (oe.eo)
 ## / \ ##  /*** Benjamin DELPY `gentilkiwi` ( [email protected] )
 ## \ / ##       > https://blog.gentilkiwi.com/mimikatz
 '## v ##'       Vincent LE TOUX             ( [email protected] )
  '#####'        > https://pingcastle.com / https://mysmartlogon.com ***/

mimikatz(commandline) # version

mimikatz 2.2.0 (arch x64)
Windows NT 10.0 build 19043 (arch x64)
msvc 150030729 207

mimikatz #

Улучшения

  • @forrest-orr провёл подробное сравнение вариаций имплантации шеллкода в этой статье
  • @dglenx перенёс концепцию на удалённую инжекцию процессов и предложил несколько способов решения IOCs в этой статье

Ссылки

  • https://github.com/hasherezade/libpeconv
  • https://github.com/hasherezade/module_overloading
  • https://github.com/hasherezade/transacted_hollowing
  • https://www.forrest-orr.net/post/masking-malicious-memory-artifacts-part-iii-bypassing-defensive-scanners
  • https://www.secforce.com/blog/dll-hollowing-a-deep-dive-into-a-stealthier-memory-allocation-variant/
Скачать инструмент