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
intel-me-research — Habla directamente con tu Intel Management Engine — herramienta Python sin dependencias. Detecta fugas de memoria, manifiesto de partición, sondeo de MKHI en vivo. Primer HECI Spy público. | Kitploit
Herramientas/GitHubGitHub/jatinkapilaq1/intel-me-research
Seguridad de Sistemas EmbebidosAnálisis de VulnerabilidadesIngeniería InversaRecopilación de InformaciónSeguridad de HardwareAnálisis de BinariosAnálisis de Firmware
GitHub

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
jatinkapilaq1/intel-me-research

intel-me-research

Habla directamente con tu Intel Management Engine — herramienta Python sin dependencias. Detecta fugas de memoria, manifiesto de partición, sondeo de MKHI en vivo. Primer HECI Spy público.

Ver Repositorio
132hace 20 díasAún no revisado

Ingeniería inversa del firmware de Intel ME — Análisis en vivo de CSME 16.x

"Tu ordenador tiene un segundo ordenador secreto en su interior. Lo encontramos, lo mapeamos y documentamos lo que se esconde ahí dentro."

🔥 PRUÉBALO TÚ MISMO — HECI SPY 🔥

Un script de Python. Cero dependencias. Habla directamente con tu Intel Management Engine.

root@kitploit:~
python scripts/heci_spy.py
# Requirements: Windows, Python 3.6+, Run as Administrator

Qué hace:

  • Detecta automáticamente tu dispositivo Intel HECI/MEI
  • Se conecta al ME mediante el protocolo MKHI
  • Consulta la versión del firmware, el manifiesto de particiones y los valores ocultos
  • Encuentra la fuga de memoria — GEN.1B devuelve un valor diferente en cada ejecución
  • Guarda un informe compartible con el registro hexadecimal bruto completo

Lo acabamos de ejecutar en un Lenovo IdeaPad Gaming 3 (i7-12650H, CSME 16.0.15.1735):

root@kitploit:~
MKHI v3.1 | FW 16.0.1735.15 | 8 partitions found | GEN.1B: 0x00C344CA (changes each run!)

Lo confirmamos: 7/12 comandos MKHI responden. El ME está vivo, hablando y filtrando memoria.

▶️ Ver la demo de 35 segundos — (clic derecho y guardar como, o súbelo a YouTube para reproducirlo en línea)

📊 Ver la presentación completa de 21 diapositivas


🏆 PRIMICIA MUNDIAL

Esta es la primera divulgación pública de la estructura interna completa del firmware de Intel CSME 16.x (Alder Lake), decodificada desde hardware real en vivo.

Nadie ha publicado nunca:

  1. El mapa completo del sistema de archivos IFWI — 80 rutas internas de CSME 16.x
  2. La configuración exacta del hardware — bloques de configuración JSON que muestran el cableado del portátil
  3. La cadena de confianza completa de certificados X.509 — 13 certificados decodificados
  4. El mecanismo de arranque ROM Bypass — cómo arranca el ME antes que tu BIOS
  5. El mapa de capacidades del ME — 11 dominios de acceso según la evidencia del firmware
  6. 28 estructuras de seguridad mapeadas desde firmware en vivo
  7. ~2.9MB de firmware legible de un sistema Intel CSME 16.x en vivo

Todo desde un Lenovo IdeaPad Gaming 3 con Intel Core i7-12650H (12.ª Gen Alder Lake).

TL;DR

Intel Management Engine (ME) es un microcontrolador oculto integrado en cada CPU moderna de Intel. Ejecuta su propio sistema operativo, tiene su propio procesador (Synopsys ARC EM) y funciona 24/7 — incluso cuando tu PC está completamente apagado. La mayoría de la gente sabe que existe. Casi nadie ha mirado en su interior.

Este proyecto lo hace.

Conseguimos con éxito:

  • Crear heci_spy.py — la primera herramienta pública sin dependencias para hablar con el Intel ME en vivo mediante HECI/MKHI
  • Encontrar una fuga de memoria — GEN.1B devuelve valores diferentes en cada ejecución (fuga de puntero de dirección)
  • Volcar el firmware en vivo directamente desde el hardware Intel ME (4.8MB)
  • Identificar los 29 módulos internos y sus propósitos
  • Confirmar la arquitectura del procesador ARC secreto a partir de cadenas brutas del firmware
  • Mapear el sistema de archivos IFWI completo de 80 rutas de CSME 16.x
  • Decodificar 8 bloques JSON de configuración de hardware que muestran el cableado exacto del portátil
  • Extraer y decodificar 13 certificados X.509 que forman la cadena de confianza
  • Documentar el mecanismo de arranque ROM Bypass — el ME se ejecuta antes que tu BIOS
  • Encontrar la tabla de datos del motor OverClocking dentro del firmware del ME
  • Mapear 28 de las 35 estructuras de seguridad del firmware
  • Documentar 8/8 bloqueos de seguridad permanentes e irreversibles
  • Parchear MEAnalyzer para que soporte CSME 16.x (antes estaba roto)

🗺️ PRIMICIA MUNDIAL: Mapa Interno Completo del Firmware

root@kitploit:~
IfwiRoot/ (THE ENTIRE FIRMWARE)
├── BiosRegion (Your BIOS — 24MB)
├── DescriptorRegion (Flash layout)
│   ├── FDBAR/ (Flash Database)
│   │   ├── FLASH_VALID_SIGNATURE
│   │   ├── FLMAP0-4 (Component maps)
│   │   └── EcRegionPointer ← EC firmware pointer
│   ├── PchStraps (PCH hardware config)
│   │   ├── PCH_Strap_DMI_OPDMI_TLS: "4 GT/s"
│   │   ├── PCH_Strap_DMI_OPD_LVO: "0.95 Volts"
│   │   └── PCH_Strap_FIA_LOSL0-3: USB3/PCIe config
│   ├── MipDesc/ (Management Engine descriptors)
│   │   ├── PmcStraps (PMC config — Type-C ports)
│   │   └── DbCStraps (Debug Capability)
│   ├── MasterAccessPermissions ← SECURITY LOCKS
│   ├── OEM (Lenovo OEM data)
│   └── VsccTable (SPI flash component table)
│
├── CseRegion (THE INTEL ME — 4.8MB)
│   ├── RomBypass ← HIDDEN BOOT MECHANISM
│   ├── RomBypassVector (Jump table)
│   ├── BPDT1/ (Boot Partition Table 1)
│   │   ├── FTPR (Fault Tolerant Recovery — 2.2MB)
│   │   ├── RBE (ROM Bypass Engine)
│   │   ├── PMC (Power Management)
│   │   ├── IOM (Intel Orchestrator Manager)
│   │   ├── NPHY (Network PHY firmware)
│   │   ├── IDLM (Dynamic Link Manager)
│   │   ├── TBTP (Thunderbolt — 40KB readable)
│   │   ├── OEM_KM (OEM Key Manifest — Lenovo's keys)
│   │   └── PCHC (PCH Configuration)
│   ├── BPDT3/
│   │   ├── NFTP (Non-Fault Tolerant — 436KB readable)
│   │   ├── ISHC (Integrated Sensor Hub — 88KB)
│   │   ├── IUNIT (Intel Unit firmware)
│   │   └── GBST (Performance Boost)
│   └── DATA_PARTITION/
│       ├── FLOG (Flash Log)
│       ├── ELOG (Event Log)
│       ├── EFS (Encrypted File System)
│       ├── FITC/ (Flash Image Tool Config)
│       │   ├── HmrfpoNvar (HMRFPO config)
│       │   ├── ConfigRulesNvar (Configuration rules)
│       │   ├── PavpHdcpNvar (DRM/ HDCP config)
│       │   ├── ChipsetInit (Chipset initialization)
│       │   ├── EomNvar (End-of-Manufacturing config)
│       │   ├── TbtConfigDataNvar (Thunderbolt config)
│       │   └── CameraGpioNvar (Camera GPIO config)
│       ├── HVMP (Hypervisor Management Policy)
│       ├── IVBP (Intel Verified Boot Policy)
│       ├── IMDP (Intel Management Data Path)
│       └── UTOK (Unit Token — device authentication)
│
├── EcRegion (Embedded Controller firmware)
├── GbeRegion (Gigabit Ethernet MAC)
└── SigningContainer (Intel signing blob)

🗺️ PRIMICIA MUNDIAL: Configuración de Hardware Decodificada

root@kitploit:~
// Platform Identification (at ME+0x29C134)
{
    "StrapsProject": "adp_p_straps.xml",
    "HarnessProject": "ADP-P PCH (w/ADL-P / M CPU) RDL v1.0.2.5",
    "HarnessLabel": "v1.30 ADP-P (Harness #50)",
    "SelectedRvp": "ADL-P DDR4 (ADL-P + ADP-P)"
}

// PCH Strap Configuration (at ME+0x29C523)
{
    "PCH_Strap_DMI_OPDMI_TLS": "4 GT/s",
    "PCH_Strap_DMI_OPD_LVO": "0.95 Volts",
    "PCH_Strap_FIA_LOSL0": "USB3",
    "PCH_Strap_FIA_LOSL1": "USB3",
    "PCH_Strap_FIA_LOSL2": "PCIe",
    "PCH_Strap_FIA_LOSL3": "PCIe"
}

// PMC Type-C Port Configuration (at ME+0x29C753)
{
    "PD0_Type_C_Port_Enabled": "Yes",
    "PD0_USB2_Port": "USB2 Port 2",
    "PD1_Type_C_Port_Enabled": "No",
    "PD2_Type_C_Port_Enabled": "No",
    "PD3_Type_C_Port_Enabled": "No"
}

// BootGuard Profile (at ME+0x29D38F)
{ "BtGuardProfileConfig": 3 }

🏆 PRIMICIA MUNDIAL: Cadena de Confianza de Certificados

root@kitploit:~
Intel On-Die Root CA (ODCA CA2)
  │ https://tsci.intel.com/.../ODCA_CA2_CSME_Indirect.crl
  └── signs
CSME ADL ROM CA0 (Root of Trust — CPU fuses)
  │ Serial: 0x01 | SHA-256: 86474ecc2fc0c74b
  │ BURNED INTO HARDWARE — CANNOT be changed
  ├── signs
  │   CSME ADL SVN01 Kernel CA0 (Core ME OS)
  │   └── signs CSME ADL PAVP 01SVN0 (DRM)
  │       └── signs PAVP SGX CP0 + Playready
  └── signs
      CSME ADL PTT 01SVN0 (Platform Trust)
      └── signs 3 PTT signing certificates

Sistema Objetivo

¿Qué es Intel ME?

Intel ME (también llamado Intel Management Engine o CSME) es un subsistema autónomo integrado en el Platform Controller Hub (PCH). Está presente en todos los chipsets de consumo de Intel desde 2008.

root@kitploit:~
 +-------------------------------------------------------+
 |                    YOUR COMPUTER                       |
 |                                                       |
 |  +-----------+    +-----------+    +---------------+  |
 |  |           |    |           |    |               |  |
 |  |  Windows  |    |   Linux   |    |  Intel ME     |  |
 |  |  (your OS)|    | (maybe)   |    |  (secret OS)  |  |
 |  |           |    |           |    |               |  |
 |  +-----------+    +-----------+    +---------------+  |
 |       |                |                |             |
 |       +------- CPU ---+------- PCH ----+             |
 |                                                       |
 |  You control this          You NEVER see this        |
 +-------------------------------------------------------+

Qué puede hacer el ME (y no puedes impedirlo)

  • Leer tu RAM — acceso completo a toda la memoria, incluso cuando el PC está "apagado"
  • Acceder a tu red — tiene su propia pila TCP/IP y conexión de red
  • Ver tu pantalla — puede capturar la salida de pantalla mediante DRM
  • Saltarse tu cortafuegos — opera por debajo del sistema operativo, invisible para todo software
  • Arrancar antes que tu sistema operativo — comienza a ejecutarse antes de que siquiera se cargue la BIOS/UEFI
  • No se puede deshabilitar — ningún ajuste de BIOS, ningún comando del SO, ningún software lo desactiva

Los 29 Módulos Ocultos

Descubrimos los 29 módulos que componen el sistema operativo interno del ME:

Sistema Central

Seguridad y Criptografía

Comunicación

Servicios de Plataforma

Configuración

Cómo lo Hicimos

Fase 1: Extracción de la BIOS

root@kitploit:~
Lenovo BIOS Update (JMCN48WW) -> Extracted Win_JMCN.BIN (34.1 MB)

Usamos herramientas estándar de extracción de BIOS para extraer la imagen de firmware bruta del paquete oficial de actualización de Lenovo.

Fase 2: Herramientas de Intel ME

root@kitploit:~
CSME System Tools v16.1
├── MEInfoWin64    -> Queried live ME hardware status
├── FPTW64         -> Dumped live ME firmware from SPI flash
└── MEManufWin64   -> Ran hardware self-tests (10/10 passed)

Usamos las propias herramientas de ingeniería de Intel para comunicarnos con el hardware del ME a través de la interfaz HECI/MEI.

Fase 3: Análisis del Firmware

root@kitploit:~
ME_region.bin (4,943,872 bytes)
├── $FPT at 0x216000     -> Flash Partition Table
├── $CPD at FTPR+0x00    -> Code Partition Directory (29 modules)
├── $MN2 at FTPR+0x2CC   -> Manifest v2 (RSA signatures)
├── X.509 Cert           -> "CSME ADL ROM CA0" (Root CA)
├── Entropy Analysis     -> 85% encrypted, 15% readable
└── ARC Strings          -> Processor architecture confirmed

Fase 4: Identificación de Módulos

root@kitploit:~
FTPR Partition Layout:
Offset 0x0000 - 0x0014  CPD Header (20 bytes)
Offset 0x0014 - 0x049C  CPD Entries (29 x 24 bytes)
Offset 0x02CC - 0x0840  FTPR.man (manifest)
Offset 0x0840 - 0x0888  intl.cfg.met (metadata)
Offset 0x1000 - 0x1798  rot.key (Root of Trust)
Offset 0x2000+          AES-encrypted modules

Fase 5: Confirmación de la Arquitectura

root@kitploit:~
Unencrypted code at ME+0x1C1000 contains:
  "ARC PARM"   -> ARC Processor Parameters register
  "DROM"       -> ARC Data ROM constant storage
  "EE_CIO"     -> ARC Core I/O exception handler
  "EE_DMA"     -> ARC DMA exception handler
  "EE_LC"      -> ARC Loop Count exception
  "PATCHES"    -> Processor microcode patches
  "APP EM"     -> Application Emulation layer

Postura de Seguridad

A partir de consultas en vivo al hardware del ME:

En resumen: Esta instancia del ME está bloqueada permanentemente a nivel de hardware. No existe ningún método exclusivamente de software para modificarla, deshabilitarla o saltársela. Se requeriría programación física de la flash SPI con herramientas de hardware — e incluso entonces, los fusibles grabados dentro del PCH no se pueden deshacer.

Corrección de MEAnalyzer

MEAnalyzer v1.311.0 falla con KeyError: '01' al analizar el firmware ADL de CSME 16.x debido a una consulta no soportada al diccionario del sistema de archivos EFS.

Corrección: Parcheamos la función efs_anl() para que utilice acceso seguro al diccionario (dict.get() en lugar de indexación directa por clave) y envolvimos la llamada de análisis EFS en un bloque try/except.

root@kitploit:~
# Before (crashes):
if 'EFST' in ftbl_dict[ftbl_plat_id][ftbl_dict_id]:

# After (safe):
if ftbl_plat_id in ftbl_dict and ftbl_dict_id in ftbl_dict[ftbl_plat_id] and 'EFST' in ftbl_dict[ftbl_plat_id][ftbl_dict_id]:

Herramientas Utilizadas

Estructura del Proyecto

root@kitploit:~
intel-me-research/
├── README.md                    # This file
├── scripts/
│   ├── heci_spy.py              # 🔥 FLAGSHIP: Talk to your Intel ME directly
│   ├── analyze_cpd.py           # Code Partition Directory parser
│   ├── analyze_me_region.py     # Full ME region analysis
│   ├── extract_modules.py       # Module extraction tool
│   └── patch_mea.py             # MEAnalyzer fix for CSME 16.x
├── evidence/
│   ├── WORLD_FIRST_EVIDENCE.py  # Master evidence presentation
│   ├── DEEPER_LAYER.py          # Timestamp + EC + cert analysis
│   ├── NUCLEAR_SCAN.py          # Complete flash + security map
│   ├── DEEP_SECRET_HUNT.py      # Secret hunting script
│   ├── DEEP_DIVE_3.py           # JSON config + cert decoding
│   ├── DECODE_CERTIFICATES.py   # X.509 certificate decoder
│   └── certs/                   # Extracted DER certificates (13)
├── docs/
│   ├── METHODOLOGY.md           # Detailed methodology
│   └── FINDINGS.md              # All findings with evidence
└── results/
    ├── modules_summary.csv      # Module inventory
    └── security_posture.csv     # Security status results

Descargo de Responsabilidad

Este proyecto tiene fines exclusivamente educativos y de investigación. Las herramientas y técnicas demostradas aquí solo deben usarse en hardware de tu propiedad. El acceso no autorizado a sistemas informáticos es ilegal. Esta investigación tiene como objetivo mejorar la comprensión de la seguridad del hardware con fines defensivos.

Autor

Construido con curiosidad y cafeína. Este proyecto demuestra que la investigación de seguridad del hardware es accesible — no necesitas un laboratorio ni equipos caros. Solo un portátil, determinación y las herramientas adecuadas.


Si este proyecto te ayudó a comprender la seguridad del hardware, dale una estrella. Si encontraste algo nuevo, abre un issue. Hagamos que la investigación de seguridad del hardware sea abierta y accesible para todos.

Descargar herramienta
PropiedadValor
PortátilLenovo IdeaPad Gaming 3 15IAH7 (82S9)
CPUIntel Core i7-12650H (12.ª Gen Alder Lake)
Versión del MECSME 16.0.15.1735
SKU del MEConsumer LP
Fecha del ME2022-02-17
CompilaciónJMCN48WW
PCHADL Device 5182, Rev A1
MóduloTamañoPropósito
kernel106 KBEl núcleo del SO — el cerebro del ordenador secreto
bup312 KBBoot Up — primer código que se ejecuta al encender el PC
syslib148 KBBiblioteca del sistema — funciones principales del SO
loadmgr28 KBCargador de módulos — carga dinámicamente otros módulos
vfs92 KBSistema de archivos virtual — gestiona el almacenamiento interno del ME
evtdisp16 KBDespachador de eventos — gestiona interrupciones y eventos
maestro16 KBMotor de orquestación — coordina los subsistemas
MóduloTamañoPropósito
crypto216 KBAES/RSA/HMAC — cifra todo lo que el ME toca
policy36 KBMotor de políticas de seguridad — decide lo que TÚ puedes hacer
fpf20 KBFused Protection Fuses — claves ancladas al hardware
rot.key2 KBClave Root of Trust — la identidad criptográfica del ME
mca_boot16 KBAutenticación de arranque — verifica la integridad del firmware
mca_srv28 KBSeguridad en tiempo de ejecución — monitoriza el sistema continuamente
MóduloTamañoPropósito
heci36 KBHost Embedded Controller Interface — bus CPU<->ME
ipc_drv16 KBComunicación entre procesos — mensajería entre módulos
sec_msg4 KBMensajería segura — mensajes internos cifrados
prtc8 KBGestor de protocolos — protocolos de comunicación
smbus8 KBInterfaz SMBus — comunicación con sensores de hardware
busdrv8 KBControlador de bus — comunicación interna
MóduloTamañoPropósito
ptt164 KBIntel PTT — reemplazo de TPM por firmware
pm16 KBPower Manager — estados de suspensión/activación
pmdrv12 KBControlador de gestión de energía
fwupdate36 KBActualización de firmware — actualiza el ME silenciosamente
storage72 KBAlmacenamiento flash — lee/escribe la flash SPI
gpio8 KBControlador GPIO — control físico de pines
MóduloTamañoPropósito
intl.cfg18 KBIntel Configuration — ajustes de plataforma
FTPR.man1 KBManifiesto de firmware — metadatos de integridad
fitc.cfg0 KBConfig de Flash Image Tool (marcador vacío)
intl.cfg.met72 BSuma de verificación de metadatos de configuración
Característica de SeguridadEstadoSignificado
FPF ProgramadoSíFusibles de un solo uso grabados permanentemente
Desbloqueo de PCHDeshabilitadoBloqueo a nivel de hardware activo
Protección de la FlashProtegidaFlash SPI bloqueada contra escritura
Perfil BootGuard3 (Completo)Verificación de arranque máxima
Arranque MedidoHabilitadoCada componente de arranque se procesa con hash
Config NVARBloqueadaLa configuración no se puede cambiar
Configuración EOMBloqueadaFin de fabricación bloqueado
Soporte de actualización de firmwareNoActualizaciones de firmware deshabilitadas
Depuración de CPUHabilitadaIntel puede depurar (tú no puedes)
HerramientaPropósito
heci_spy.py 🔥Nuestro HECI Spy — habla con el Intel ME en vivo, cero dependencias
Intel MEInfoWin64 v16.1Consulta en vivo del hardware del ME
Intel FPTW64 v16.1Volcado en vivo de la flash SPI
Intel MEManufWin64 v16.1Autopruebas de fabricación
MEAnalyzer v1.311.0Análisis de metadatos del firmware
Radare2 6.1.8Desensamblado de binarios
Python 3.14Scripts de análisis personalizados
Ghidra 11.3.2Ingeniería inversa de firmware