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
pe_to_shellcode — Convierte PE en shellcode | Kitploit
Herramientas/GitHubGitHub/hasherezade/pe_to_shellcode
Generación de PayloadsExplotaciónEvasión de IDS/IPSShellcodePruebas de PenetraciónGeneración de ShellcodeDesarrollo de PayloadsExplotación de BinariosTop en Evasión de IDS/IPS #17Top en Desarrollo de Payloads #3
2.8k47115hace 1 añoRevisado por Kitploit
Top en Generación de Payloads #7
Top en Shellcode #3
Top en Generación de Shellcode #7
GitHubhasherezade/pe_to_shellcode

pe_to_shellcode

Convierte PE en shellcode

Ver RepositorioSitio web

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

pe_to_shellcode

Build status GitHub release Github All Releases Github Latest Release

Convierte un PE para que pueda ser inyectado como un shellcode normal.
(Al mismo tiempo, el archivo de salida sigue siendo un PE válido).
Soporta tanto PEs de 32 como de 64 bits

Autores: @hasherezade y @hh86

Objetivo

El objetivo de este proyecto es proporcionar la posibilidad de generar archivos PE que puedan ser inyectados con el mínimo esfuerzo. Está inspirado en el ReflectiveDLLInjection de Stephen Fewer, pero la diferencia es que con pe2shc puedes añadir el stub de carga reflexiva después de la compilación. Además, la cabecera del archivo PE se modifica de tal manera que puedes comenzar a ejecutar el búfer inyectado desde el principio, igual que harías con un shellcode. Encontrará automáticamente el stub y continuará cargando el PE completo.

Alcance del proyecto

Descargar herramienta

🟢 El stub solo soporta estructuras básicas del formato PE, como:

  • reubicaciones
  • importaciones
  • callbacks TLS (llamados una vez, antes de que se ejecute el Punto de Entrada)

Ten en cuenta que, aunque para la mayoría de los archivos PE esto es suficiente, algunos ejecutables que encuentres pueden estar usando otros aspectos más complejos del formato PE. Esto significa que no todos los PE pueden convertirse exitosamente a un shellcode.

🚫 Ejemplos de elementos actualmente no soportados:

  • excepciones (si el ejecutable que convertiste se ejecuta como shellcode y lanza una excepción, el manejador de excepciones adecuado no se encontrará y la aplicación fallará)
  • Importaciones de Carga Diferida (solo está implementado el soporte básico de la Tabla de Importaciones)
  • archivos MUI (si el ejecutable que convertiste espera que algunos elementos de la GUI se carguen desde un archivo MUI, no funcionará)

Compilaciones

📦 ⚙️ Descarga la última versión.

Clonar

Usa clonado recursivo para obtener el repositorio junto con todos los submódulos:

root@kitploit:~
git clone --recursive https://github.com/hasherezade/pe_to_shellcode.git

Cómo usarlo

  1. Usa pe2shc.exe para convertir un PE de tu elección:
root@kitploit:~
pe2shc.exe <ruta a tu PE> [ruta de salida*]
* - opcional

Si el PE se convierte exitosamente, pe2shc te indicará dónde se guardó la salida:

root@kitploit:~
[+] Guardado en el archivo: <archivo convertido>

Ej.:

root@kitploit:~
[+] Guardado en el archivo: test_file.shc.exe
  1. Usa runshc.exe(*) para ejecutar el archivo de salida y comprobar si la conversión fue correcta.
root@kitploit:~
runshc.exe <archivo convertido>

(*)Advertencia: recuerda usar la versión de runshc con la arquitectura adecuada para tu aplicación convertida (32 o 64 bits); de lo contrario, la aplicación fallará.

  1. Si el archivo se ejecuta como el PE original, ¡confirma que la conversión fue exitosa!
    Ahora puedes usar el PE convertido igual que usarías un shellcode: inyéctalo en un objetivo y ejecútalo desde el principio del búfer. No se requieren cargadores de PE adicionales.
    Al mismo tiempo, puedes seguir usando el archivo convertido como un PE normal.