🔧 固件逆向 · 动态调试实战
📘 30章 从入门到高阶 · 友好色系
🎯 30 节完整目录
⚡ 点击跳转章节
1
固件逆向概述
基础
什么是固件逆向 · 动态调试 vs 静态分析 · 漏洞挖掘/恶意分析/知识产权
2
动态调试环境搭建
环境
JTAG/SWD调试器 · OpenOCD+GDB · QEMU模拟环境
3
GDB基础操作
调试
启动/退出 · 硬件/软件断点 · 单步/继续 · 寄存器/内存修改
4
固件加载与入口点分析
分析
BIN/ELF/HEX格式 · 加载地址 · readelf/objdump
5
ARM架构基础
架构
处理器模式/寄存器 · ARM/Thumb切换 · 异常向量表 · 栈帧
6
MIPS架构基础
架构
寄存器约定 · 延迟槽/分支预测 · CP0异常 · 指令识别
7
RISC-V架构基础
架构
寄存器/ABI · 指令编码 · 特权级/异常 · 调试要点
8
动态调试中的断点艺术
进阶
条件断点 · Watchpoint · 命中次数 · 脚本自动化
9
内存分析与修改
内存
内存映射 · 堆栈回溯 · 搜索/Patch · 运行时变量监控
10
固件解包与文件系统提取
解包
Binwalk · SquashFS/JFFS2/UBIFS · 加密压缩识别
11
U-Boot启动流程调试
启动
源码编译/调试符号 · SPL交互 · 环境变量/启动参数
12
Linux内核启动调试
内核
内核解压入口 · DTB加载 · 模块动态加载 · KASLR绕过
13
用户态程序动态调试
用户态
交叉编译GDB Server · 远程调试 · 共享库断点/LD_PRELOAD
14
内核态驱动调试
驱动
模块加载卸载 · ioctl逆向 · 中断处理 · kprobe/jprobe
15
RTOS系统调试
RTOS
FreeRTOS任务切换 · uC/OS-II信号量 · RT-Thread组件
16
无线协议栈调试
无线
Wi-Fi Beacon · 蓝牙ATT · ZigBee · LoRaWAN MAC
17
固件漏洞动态验证
漏洞
栈/堆溢出 · 格式化字符串 · UAF复现
18
反调试与反分析技术
反调试
完整性校验绕过 · 调试器检测 · 代码混淆/自修改 · 时间戳
19
硬件辅助调试
硬件
JTAG边界扫描 · SWD协议 · UART输出 · 逻辑分析仪
20
固件Patch与持久化修改
Patch
二进制Patch · 重打包校验修复 · inline/PLT hook
21
动态污点分析
污点
污点源标记/传播 · 路径记录 · 触发条件 · 辅助挖洞
22
符号执行与动态调试结合
符号
Angr基础 · Concolic测试 · 路径约束求解 · 漏洞探索
23
固件模糊测试 (Fuzzing)
Fuzz
AFL/QEMU模式 · 输入生成 · 崩溃复现 · 覆盖率优化
24
物联网固件安全分析
IoT
MQTT/CoAP调试 · OTA更新 · 身份认证绕过
25
工控固件逆向
工控
Modbus/PROFINET · PLC动态调试 · HMI漏洞
26
汽车固件调试
汽车
CAN总线 · UDS诊断 · ECU刷写 · 车载娱乐逆向
27
固件动态调试自动化
自动化
GDB Python脚本 · 自动断点/日志 · 批量流水线 · CI/CD
28
案例实战1:路由器漏洞挖掘
实战
从固件解包到RCE · 完整动态调试链
29
案例实战2:摄像头后门分析
实战
流量捕获 → 权限提升 · 后门逆向
30
案例实战3:PLC硬编码密钥提取
实战
调试接口 → 解密通信 · 硬编码密钥提取