Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
PELoader — Cargador de PE con varias técnicas de inyección de shellcode | Kitploit
Herramientas/GitHubGitHub/hagrid29/peloader
ExplotaciónShellcodePost-ExplotaciónAnálisis de MalwareAnálisis de BinariosRed TeamingDesarrollo de Payloads
GitHubhagrid29/peloader

PELoader

Cargador de PE con varias técnicas de inyección de shellcode

Ver Repositorio
455662hace 3 añosRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

PELoader

PELoader implementa varias técnicas de inyección de shellcode y utiliza la librería libpeconv para cargar archivos PE cifrados en lugar de inyectar shellcode en un hilo remoto.

Se implementaron las siguientes técnicas:

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

Créditos: la mayor parte de mi trabajo se basó en los scripts PoC de @hasherezade.

Pruebas

PELoader se probó en Windows 10 con Cortex XDR / SentinalOne / Windows Defender / CrowdStrike, y Windows Defender / CrowdStrike detectaron las técnicas Transacted Hollowing. Las características de cada técnica se probaron con la herramienta de escaneo de memoria Moneta de @forrest-orr.

Module Stomping (LoadLibrary)

Llama a LoadLibrary para cargar una DLL legítima. Sobrescribe la DLL con el payload.

Ventajas

  • payload mapeado como MEM_IMAGE que parece legítimo para EXE o DLL
  • suplantando una DLL legítima
  • Secciones mapeadas con derechos de acceso originales (sin RWX)

cdll

Module Stomping (NtMapViewOfSection)

Llama a NtCreateSection para crear un objeto de asignación de archivo (PAGE_READONLY) para una DLL legítima, y llama a NtMapViewOfSection para mapearlo en el proceso actual. Sobrescribe la DLL con el payload.

Descargar herramienta

Ventajas

  • payload mapeado como MEM_IMAGE que parece legítimo para EXE o DLL
  • suplantando una DLL legítima
  • Secciones mapeadas con derechos de acceso originales (sin RWX)
  • No conectada a la lista de módulos (invisible para Module32First/Module32Next)

Desventajas

  • No conectada a la lista de módulos (comprueba "Missing PEB module" en el resultado de escaneo de Moneta a continuación)

mdll

referencia al PoC de @hasherezade.

Transacted Hollowing

Una mezcla entre Process Hollowing y Process Doppelgänging. Crea un archivo "invisible" dentro de la transacción NTFS y escribe el payload en el archivo. Mapea la sección al proceso actual y la ejecuta.

Ventajas

  • Payload mapeado como MEM_IMAGE
  • Secciones mapeadas con derechos de acceso originales (sin RWX)
  • No es necesario que exista un archivo ficticio

Desventajas

  • Detección si hay monitoreo de actividad TxF

txf

Ghostly Hollowing

Una mezcla entre Process Hollowing y Process Ghosting. Crea un archivo con estado de eliminación pendiente y escribe el payload en el archivo. Mapea la sección al proceso actual y la ejecuta.

Ventajas

  • Payload mapeado como MEM_IMAGE
  • Secciones mapeadas con derechos de acceso originales (sin RWX)
  • Evita "System Idle Process" sin ninguna ruta de imagen (IOC de process ghosting)

Desventajas

  • Archivo ficticio creado en disco

ghostreferencia al PoC de @hasherezade.

NtMapViewOfSection (RWX-RW-RX)

Llama a NtCreateSection para crear una sección de memoria (RWX). Llama a NtMapViewOfSection para mapear una vista al proceso actual (RWX). Llama a VirtualProtect para cambiar la protección a RW. Copia el shellcode a la sección mapeada. Cambia la protección a RX y lo ejecuta.

Ventajas

  • Payload mapeado como MEM_MAPPED para evitar MEM_PRIVATE que es común en malware

Desventajas

  • Establecer la página de memoria en protección RWX en la etapa inicial
  • Memoria EXE mapeada anormal con protección RX

map

NtAllocateVirtualMemory (RW-RX)

Llama a NtAllocateVirtualMemory para asignar memoria (RW). Copia el shellcode a la memoria. Cambia la protección a RX y lo ejecuta.

Ventajas

  • Evita página de memoria RWX

Desventajas

  • Almacenar shellcode en una página de memoria con tipo privado MEM_PRIVATE
  • Memoria EXE privada anormal con protección RX

priv

Uso

Cifrar Payload con AES

Convierte el archivo PE a shellcode con pe_to_shellcode y lo cifra con 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

Ejecución del PE

Establece el argumento en la variable de entorno "hagrid" y ejecuta 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 #

Mejoras

  • @forrest-orr realizó una comparación detallada de las variaciones de implantes de shellcode en este artículo
  • @dglenx trasladó el concepto a la inyección remota de procesos y sugiere algunas formas de abordar los IOCs en este artículo

Referencias

  • 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/