固件漏洞挖掘 · 目录

30章 · 从入门到进阶
01
固件安全概述
什么是固件、固件漏洞的危害、固件安全研究现状与趋势
02
硬件基础入门
常见嵌入式芯片架构(ARM/MIPS/RISC-V)、外设接口(UART/SPI/I2C)、电路板基础识别
03
固件获取与提取
从官网下载、从设备Flash芯片读取(编程器/SPI Flash)、从OTA升级包提取
04
固件解包与文件系统分析
binwalk工具使用、常见文件系统(Squashfs/JFFS2/UBIFS)解析、手动提取
05
固件模拟与运行
QEMU系统模式与用户模式模拟、Firmadyne框架搭建、网络服务模拟
06
静态分析基础
IDA Pro/Ghidra基础使用、字符串分析、交叉引用分析、函数识别
07
动态分析基础
GDB调试嵌入式程序、strace跟踪系统调用、gdbserver远程调试
08
漏洞挖掘之命令注入
Web接口命令注入、CGI程序分析、过滤绕过技巧
09
漏洞挖掘之栈溢出
ARM/MIPS栈结构分析、溢出点定位、ROP基础概念
10
漏洞挖掘之堆溢出
堆管理机制(dlmalloc/ptmalloc)、UAF漏洞原理、堆利用入门
11
漏洞挖掘之格式化字符串
格式化函数漏洞原理、任意地址读写、利用技巧
12
漏洞挖掘之整数溢出
整数溢出原理、截断与符号问题、实际案例分析
13
漏洞挖掘之逻辑漏洞
认证绕过、权限提升、会话管理缺陷
14
漏洞挖掘之内存破坏
数组越界、指针误用、未初始化变量
15
漏洞挖掘之Web接口漏洞
CSRF、SSRF、路径遍历、文件上传漏洞
16
漏洞挖掘之协议漏洞
UPnP、MQTT、CoAP协议安全分析
17
漏洞挖掘之硬件调试接口
JTAG/SWD调试接口利用、UART控制台获取
18
漏洞挖掘之侧信道攻击
电源分析、电磁分析、时序分析基础
19
漏洞利用之ROP链构造
ARM/MIPS ROP gadget查找、链式调用、绕过NX/DEP
20
漏洞利用之ASLR绕过
信息泄露、部分覆盖、爆破技巧
21
漏洞利用之堆利用进阶
House of系列技术、tcache攻击、堆风水
22
漏洞利用之内核漏洞
内核模块分析、ioctl漏洞、权限提升
23
自动化漏洞挖掘
AFL/libFuzzer固件模糊测试、自定义harness编写
24
自动化漏洞挖掘进阶
syzkaller内核模糊测试、固件专用fuzzer设计
25
漏洞分析工具链
Firmwalker、EMBA固件分析框架、FACT自动化分析
26
真实漏洞案例分析
CVE-2021-22205(GitLab)、CVE-2023-28771(TP-Link)、CVE-2024-xxx(路由器)深度复盘
27
漏洞挖掘方法论
攻击面分析、威胁建模、漏洞赏金计划实战
28
固件安全加固
安全启动、加密存储、代码混淆、运行时保护
29
漏洞报告撰写
漏洞描述、复现步骤、PoC编写、报告模板
30
综合实战项目
从零挖掘一个真实路由器固件漏洞(完整流程:信息收集→固件提取→静态分析→动态调试→漏洞发现→利用编写→报告输出)