NXP安全芯片逆向工程实战

📚 共计 30 章节
01
安全芯片概述
NXP安全芯片家族介绍 · 应用场景(支付/物联网/车联网) · 法律边界与伦理
基础概念
02
硬件基础与接口识别
封装类型(QFN/BGA/SOP) · 引脚功能(VCC/GND/IO/SWD/JTAG) · NXP引脚图分析
硬件接口
03
开发环境搭建
逻辑分析仪/示波器/编程器/热风枪 · OpenOCD/JLink/GDB/Python
工具环境
04
通信协议分析基础
UART/SPI/I2C时序 · 逻辑分析仪抓取 · 解码与分析通信内容
协议抓包
05
BootROM分析与启动流程
启动模式(串行下载/Flash/USB) · BootROM提取 · 启动向量表分析
BootROM启动
06
Flash存储器读取与转储
SPI Flash vs 内部Flash · 编程器读取 · 分区表与文件系统分析
Flash转储
07
固件提取与解密
加密机制(AES/RSA/OTP) · 密钥存储 · 暴力破解与侧信道入门
解密侧信道
08
JTAG/SWD调试接口利用
JTAG/SWD协议 · 扫描链识别 · OpenOCD连接 · 读取CPU寄存器与内存
调试接口
09
熔丝与安全位操作
Security Bit原理 · 熔丝状态读取/修改 · 绕过安全启动经典方法
熔丝安全位
10
静态固件分析
IDA Pro/Ghidra加载固件 · 识别ARM Cortex-M · 中断向量表与主函数
静态反汇编
11
动态调试技术
JLink+GDB动态调试 · 断点/单步 · 观察内存与外设寄存器
动态调试
12
固件反汇编与伪代码生成
ARM Thumb指令集 · 函数识别与调用约定 · Ghidra伪C代码
反汇编Ghidra
13
关键数据结构分析
字符串表 · 函数指针表 · 全局变量/常量 · 结构体恢复技巧
数据结构逆向
14
密码算法识别与定位
AES/RSA/SHA算法识别 · S盒与密钥扩展表 · 提取硬编码密钥
密码密钥
15
侧信道攻击实战
功耗分析SPA/DPA基础 · 示波器采集功耗轨迹 · 识别算法操作
侧信道SPA
16
故障注入攻击入门
电压/时钟毛刺原理 · ChipWhisperer设备 · 触发安全漏洞
故障注入硬件攻击
17
安全启动链分析
BootROM→FlashLoader→App信任链 · 签名验证 · 绕过签名检查
启动链签名
18
OTP存储器与唯一ID
OTP结构 · 读取芯片唯一ID · 设备绑定分析
OTP唯一ID
19
内存保护单元(MPU)分析
ARM MPU配置与寄存器 · 区域划分与权限 · 绕过MPU保护
MPU内存保护
20
安全协处理器(CASPER)分析
协处理器指令集 · 通信机制 · 提取协处理器固件
协处理器LPC55xx
21
USB协议栈逆向
USB设备描述符 · 控制/批量传输抓取 · 固件升级漏洞挖掘
USB协议
22
CAN总线与车规芯片分析
CAN协议 · NXP车规芯片(S32K)安全特性 · 报文注入与重放
CAN车规
23
TLS/SSL协议栈逆向
嵌入式TLS(mbedTLS/wolfSSL) · 证书存储 · 私钥提取技术
TLS私钥
24
固件补丁与修改
二进制补丁 · 修改跳转指令 · 重新计算CRC与校验和
补丁修改
25
固件重打包与刷写
修改固件重打包 · 签名伪造与重签名 · 编程器刷写
重打包刷写
26
调试接口锁定与解锁
调试接口锁定机制 · 解锁序列分析 · 暴力解锁与安全擦除
锁定解锁
27
硬件木马检测
X光检查基础 · 异常电路识别 · 电源网络分析
硬件木马检测
28
逆向工程自动化脚本编写
Python+pyOCD自动化读取内存 · 分析固件结构 · 批量提取数据
自动化脚本
29
案例实战:智能门锁芯片逆向
分析NXP智能门锁固件 · 提取配对密钥 · 模拟合法设备通信
案例门锁
30
案例实战:物联网模组安全评估
i.MX RT系列安全防护评估 · 发现并利用固件更新漏洞
案例物联网