🧩 Avatar2 + QEMU
硬件逆向实战
📘 30章 完整版
⚡ 动手实践
🔬 逆向工程
01
硬件逆向概述
什么是硬件逆向
应用场景
伦理边界
02
Avatar2框架入门
核心概念
Target/Memory
安装配置
03
QEMU系统模拟基础
QEMU简介
User/System Mode
编译QEMU
04
搭建第一个实验环境
选择目标设备
配置QEMU机器
Avatar2脚本
05
Avatar2核心API详解
Target对象
内存读写
寄存器/执行控制
06
内存映射与外设模拟
硬件内存映射
添加自定义外设
访问外设寄存器
07
固件加载与分析
提取固件
加载到QEMU
设置PC/SP
08
断点与动态调试
硬件/软件断点
条件断点
单步调试
09
函数调用追踪
Hook入口/出口
记录调用栈
分析关键函数
10
外设交互模拟
模拟UART
模拟GPIO
定时器中断
11
中断处理机制
Cortex-M向量表
模拟中断触发
ISR处理
12
DMA与数据传输
DMA控制器原理
模拟DMA传输
监控DMA通道
13
Flash与EEPROM模拟
模拟Flash读写
模拟EEPROM
持久化状态
14
时钟与复位逻辑
模拟系统时钟
复位序列
看门狗定时器
15
网络接口模拟
以太网控制器
Wi-Fi模块
捕获数据包
16
传感器与外设模拟
I2C传感器
SPI设备
ADC转换
17
固件漏洞挖掘基础
常见漏洞类型
缓冲区溢出
触发漏洞
18
模糊测试(Fuzzing)集成
集成AFL/libFuzzer
对固件模糊测试
分析崩溃日志
19
符号执行与约束求解
Angr/Z3结合
符号化输入
路径探索
20
协议逆向工程
捕获通信
模拟协议栈
逆向未知协议
21
Bootloader分析与绕过
模拟Bootloader
安全启动链
绕过验证
22
加密算法逆向
定位加密函数
提取密钥
模拟加解密
23
JTAG/SWD调试接口模拟
调试接口协议
模拟调试会话
读取内部寄存器
24
多核/多设备协同模拟
多核ARM
设备互联
同步调试
25
性能优化与加速
TCG加速
并行模拟
减少内存开销
26
日志与追踪系统
配置日志级别
自定义日志
Wireshark分析
27
自动化测试框架
自动化脚本
回归测试
CI集成
28
真实案例:路由器固件逆向
分析路由器固件
提取Web管理界面
发现后门账号
29
真实案例:物联网设备漏洞挖掘
模拟智能灯泡
OTA更新漏洞
远程代码执行
30
课程总结与进阶方向
回顾核心技能
进阶资源
未来趋势