第 1章 物联网概述 1
1.1 物联网简介 1
1.2 物联网发展史 2
1.3 物联网发展现状 4
1.4 物联网安全现状 6
第 2章 物联网设备硬件分析 11
2.1 物联网设备硬件组成 11
2.1.1 印制电路板 11
2.1.2 存储芯片 13
2.2 电子基础 16
2.2.1 电压 16
2.2.2 电流 16
2.2.3 电阻 17
2.2.4 电容 17
2.2.5 晶体管 18
2.3 物联网通信接口识别与调试 18
2.3.1 通用异步收发器 18
2.3.2 联合测试工作组 21
2.3.3 通过通信接口对UART设备进行调试 22
2.4 物联网设备硬件防护 32
2.4.1 通信接口安全 33
2.4.2 存储芯片安全 33
第3章 物联网固件分析 35
3.1 了解固件 35
3.2 常见的文件系统 36
3.2.1 SquashFS文件系统 36
3.2.2 JFFS2文件系统 37
3.2.3 YAFFS2文件系统 39
3.2.4 UBIFS文件系统 40
3.2.5 CramFS文件系统 40
3.3 获取固件 40
3.3.1 从官网获取固件 41
3.3.2 通过流量拦截获取固件 43
3.3.3 使用编程器从闪存中读取固件 49
3.3.4 通过串口调试提取固件 52
3.4 提取固件中的文件系统 58
3.4.1 使用系统自带的命令提取文件系统 58
3.4.2 使用工具提取 61
3.5 分析文件系统 64
3.5.1 使用firmwalker分析文件系统 64
3.5.2 使用trommel工具分析文件系统 66
3.5.3 使用emba自动分析固件 67
3.5.4 使用FACT自动分析固件 70
3.6 固件模拟 73
3.6.1 QEMU模拟 73
3.6.2 Firmware Analysis Toolkit模拟 81
3.6.3 FirmAE模拟 83
3.7 物联网固件分析实战 85
3.7.1 常见的固件加密方式 85
3.7.2 对加密的固件进行解密 87
3.8 物联网固件防护 93
第4章 物联网固件漏洞利用 95
4.1 Sapido RB-1732路由器命令执行漏洞 95
4.1.1 漏洞介绍 95
4.1.2 漏洞分析 96
4.1.3 漏洞复现 104
4.1.4 安全修复建议 107
4.2 TP-Link Smart Home Router远程代码执行漏洞 107
4.2.1 漏洞介绍 107
4.2.2 漏洞分析 108
4.2.3 固件模拟 118
4.2.4 修复方案 124
4.3 D-Link DIR-815后门漏洞 125
4.3.1 漏洞介绍 125
4.3.2 漏洞分析 125
4.3.3 漏洞复现 127
4.4 物联网固件漏洞防护 128
第5章 物联网协议安全 131
5.1 RFID 131
5.1.1 RFID卡的分类 133
5.1.2 RFID嗅探攻击 135
5.1.3 RFID卡的安全防范 139
5.2 ZigBee协议 140
5.2.1 IEEE 802.15.4标准 140
5.2.2 ZigBee协议层 141
5.2.3 ZigBee网络拓扑结构 143
5.2.4 ZigBee安全密钥 145
5.2.5 ZigBee流量嗅探 146
5.3 低功耗蓝牙协议 150
5.3.1 BLE协议栈 151
5.3.2 通用属性(GATT)配置文件 153
5.3.3 BLE流量嗅探与重放攻击 155
5.4 物联网协议安全防护 159