Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
intel-me-research — 直接与您的 Intel Management Engine 通信 — 零依赖的 Python 工具。发现内存泄漏、分区清单、实时 MKHI 探测。首个公开的 HECI Spy。 | Kitploit
工具/GitHubGitHub/jatinkapilaq1/intel-me-research
嵌入式系统安全漏洞分析逆向工程信息收集硬件安全二进制分析固件分析
GitHubjatinkapilaq1/intel-me-research

intel-me-research

直接与您的 Intel Management Engine 通信 — 零依赖的 Python 工具。发现内存泄漏、分区清单、实时 MKHI 探测。首个公开的 HECI Spy。

查看仓库
13281个月前尚未审核

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

Intel ME 固件逆向工程 — 实时 CSME 16.x 分析

“你的电脑里藏着一台秘密的第二台电脑。我们找到了它,绘制了它的地图,并记录下了里面隐藏的东西。”

🔥 亲自尝试 — HECI SPY 🔥

一个 Python 脚本。零依赖。直接与你的 Intel 管理引擎对话。

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

它的功能:

  • 自动检测你的 Intel HECI/MEI 设备
  • 通过 MKHI 协议连接 ME
  • 查询固件版本、分区清单和隐藏值
  • 发现内存泄漏 — GEN.1B 每次运行返回不同的值
  • 保存带有完整原始十六进制日志的可共享报告

刚刚在一台 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!)

我们确认:7/12 个 MKHI 命令有响应。ME 是活的,正在通信,并且在泄漏内存。

▶️ 观看 35 秒演示 — (右键另存为,或上传到 YouTube 以便内联播放)

📊 查看完整的 21 页演示文稿


🏆 世界首创声明

这是首次公开披露 Intel CSME 16.x(Alder Lake)固件的完整内部结构,且这些结构是从真实硬件上解码得出的。

从未有人公开过:

  1. 完整的 IFWI 文件系统图谱 — CSME 16.x 的 80 个内部路径
  2. 精确的硬件配置 — 显示笔记本布线的 JSON 配置块
  3. 完整的 X.509 证书信任链 — 解码了 13 个证书
  4. ROM Bypass 启动机制 — ME 如何先于你的 BIOS 启动
  5. ME 能力图谱 — 来自固件证据的 11 个访问域
  6. 28 个安全结构 从真实固件中绘制
  7. 约 2.9MB 可读固件 来自真实的 Intel CSME 16.x 系统

全部来自一台搭载 Intel Core i7-12650H(第 12 代 Alder Lake) 的 Lenovo IdeaPad Gaming 3。

太长不看(TL;DR)

Intel 管理引擎(ME)是嵌入每一颗现代 Intel CPU 中的隐藏微控制器。它运行自己的操作系统,拥有自己的处理器(Synopsys ARC EM),并且 全天候运行 — 即使你的电脑完全关机。 大多数人知道它的存在。但几乎没有人真正探究过它的内部。

而这个项目做到了。

我们成功做到了:

  • 构建了 heci_spy.py — 首个公开的零依赖工具,可通过 HECI/MKHI 与 Intel ME 实时通信
  • 发现内存泄漏 — GEN.1B 每次运行返回不同的值(地址指针泄漏)
  • 直接从 Intel ME 硬件转储了 实时固件(4.8MB)
  • 识别了全部 29 个内部模块 及其用途
  • 从原始固件字符串中确认了 秘密 ARC 处理器 架构
  • 绘制了 CSME 16.x 完整的 80 路径 IFWI 文件系统
  • 解码了 8 个 JSON 硬件配置块,显示精确的笔记本布线
  • 提取并解码了构成信任链的 13 个 X.509 证书
  • 记录了 ROM Bypass 启动机制 — ME 先于你的 BIOS 运行
  • 在 ME 固件中找到了 超频引擎 数据表
  • 绘制了固件中 35 个安全结构中的 28 个
  • 记录了 8/8 个永久性、不可逆转的安全锁
  • 修补了 MEAnalyzer 以支持 CSME 16.x(此前已损坏)

🗺️ 世界首创:完整固件内部图谱

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)

🗺️ 世界首创:解码的硬件配置

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 }

🏆 世界首创:证书信任链

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

目标系统

什么是 Intel ME?

Intel ME(也称为 Intel 管理引擎或 CSME)是嵌入在平台控制器中枢(PCH)中的自主子系统。自 2008 年以来,它一直存在于每一款 Intel 消费级芯片组中。

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

ME 能做什么(而你无法阻止它)

  • 读取你的内存 — 可完全访问所有内存,即使电脑处于“关机”状态
  • 访问你的网络 — 拥有自己的 TCP/IP 协议栈和网络连接
  • 看到你的屏幕 — 可以通过 DRM 捕获显示输出
  • 绕过你的防火墙 — 在操作系统之下运行,对所有软件不可见
  • 先于你的操作系统启动 — 在 BIOS/UEFI 加载之前就开始执行
  • 无法被禁用 — 没有 BIOS 设置、没有操作系统命令、没有任何软件可以禁用它

29 个隐藏模块

我们发现了构成 ME 内部操作系统的全部 29 个模块:

核心系统

安全与加密

通信

平台服务

配置

我们是如何做到的

第一阶段:BIOS 提取

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

使用标准的 BIOS 提取工具,从联想官方更新包中提取原始固件镜像。

第二阶段: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)

使用 Intel 自家的工程工具,通过 HECI/MEI 接口与 ME 硬件进行通信。

第三阶段:固件分析

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

第四阶段:模块识别

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

第五阶段:架构确认

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

安全态势

来自 ME 实时硬件查询:

说明: 这个 ME 实例在硬件层面被永久锁定。没有任何纯软件方法可以修改、禁用或绕过它。需要使用硬件工具进行物理 SPI 闪存编程 — 即便如此,PCH 内部已熔断的熔丝也无法撤销。

MEAnalyzer 修复

MEAnalyzer v1.311.0 在分析 CSME 16.x ADL 固件时会因不支持的 EFS 文件系统字典查找而崩溃,报 KeyError: '01' 错误。

修复: 修补了 efs_anl() 函数,使用安全的字典访问(用 dict.get() 代替直接键索引),并将 EFS 分析调用包装在 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]:

使用的工具

项目结构

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

免责声明

本项目仅用于教育和研究目的。 此处展示的工具和技术只能用于你自己拥有的硬件。未经授权访问计算机系统是违法的。这项研究旨在提升对硬件安全的理解,以服务于防御目的。

作者

用好奇心和咖啡因打造。这个项目证明了硬件安全研究并非高不可攀 — 你不需要实验室或昂贵的设备。只需一台笔记本电脑、决心和合适的工具。


如果这个项目帮助你理解了硬件安全,请给它一个 star。如果你发现了新的东西,请提出 issue。让我们推动硬件安全研究向所有人开放、触手可及。

下载工具
属性值
笔记本Lenovo IdeaPad Gaming 3 15IAH7 (82S9)
CPUIntel Core i7-12650H(第 12 代 Alder Lake)
ME 版本CSME 16.0.15.1735
ME SKUConsumer LP
ME 日期2022-02-17
构建JMCN48WW
PCHADL Device 5182,Rev A1
模块大小用途
kernel106 KB操作系统内核 — 秘密计算机的大脑
bup312 KB启动(Boot Up)— 电脑通电时首先运行的代码
syslib148 KB系统库 — 操作系统核心功能
loadmgr28 KB模块加载器 — 动态加载其他模块
vfs92 KB虚拟文件系统 — 管理 ME 内部存储
evtdisp16 KB事件分发器 — 处理中断和事件
maestro16 KB编排引擎 — 协调各子系统
模块大小用途
crypto216 KBAES/RSA/HMAC — 加密 ME 所接触的一切
policy36 KB安全策略引擎 — 决定你能做什么
fpf20 KB熔丝保护(Fused Protection Fuses)— 硬件根密钥
rot.key2 KB信任根密钥 — ME 的加密身份
mca_boot16 KB启动认证 — 验证固件完整性
mca_srv28 KB运行时安全 — 持续监控系统
模块大小用途
heci36 KB主机嵌入式控制器接口 — CPU<->ME 总线
ipc_drv16 KB进程间通信 — 模块消息传递
sec_msg4 KB安全消息传递 — 加密的内部消息
prtc8 KB协议处理器 — 通信协议
smbus8 KBSMBus 接口 — 硬件传感器通信
busdrv8 KB总线驱动程序 — 内部通信
模块大小用途
ptt164 KBIntel PTT — 固件 TPM 替代方案
pm16 KB电源管理器 — 睡眠/唤醒状态
pmdrv12 KB电源管理驱动程序
fwupdate36 KB固件更新 — 静默更新 ME
storage72 KB闪存存储 — 读写 SPI 闪存
gpio8 KBGPIO 控制器 — 物理引脚控制
模块大小用途
intl.cfg18 KBIntel 配置 — 平台设置
FTPR.man1 KB固件清单 — 完整性元数据
fitc.cfg0 KBFlash Image Tool 配置(空占位符)
intl.cfg.met72 B配置元数据校验和
安全功能状态含义
FPF 已提交是一次性熔丝已永久熔断
PCH 未锁定已禁用硬件级锁定生效
闪存保护已保护SPI 闪存写锁定
BootGuard 配置文件3(完整)最大启动验证
测量启动已启用每个启动组件都经过哈希
NVAR 配置已锁定配置无法更改
EOM 设置锁定制造结束(End-of-Manufacturing)已锁定
固件更新支持否固件更新已禁用
CPU 调试已启用Intel 可以调试(你不行)
工具用途
heci_spy.py 🔥我们的 HECI Spy — 与 Intel ME 实时对话,零依赖
Intel MEInfoWin64 v16.1ME 硬件实时查询
Intel FPTW64 v16.1SPI 闪存实时转储
Intel MEManufWin64 v16.1制造自检
MEAnalyzer v1.311.0固件元数据分析
Radare2 6.1.8二进制反汇编
Python 3.14自定义分析脚本
Ghidra 11.3.2固件逆向工程