目录
第一部分IoT威胁全景
第1章IoT安全概览
1.1为什么IoT安全很重要?
1.2IoT安全与传统IT安全有何不同
1.2.1IoT黑客攻击有何特别之处
1.2.2框架、标准和指南
1.3案例研究: 查寻、报告和披露IoT安全问题
1.4专家视角: 驾驭IoT格局
1.4.1IoT黑客攻击法律
1.4.2政府在IoT安全中的作用
1.4.3医疗设备安全的患者视角
结语
第2章威胁建模
2.1IoT威胁建模
2.2遵循威胁建模框架
2.2.1识别体系结构
2.2.2将体系结构分解为组件
2.2.3识别威胁
2.2.4使用攻击树发现威胁
2.3使用DREAD分类方案对威胁进行评级
2.4其他类型的威胁建模、框架和工具
2.5常见的IoT威胁
2.5.1信号干扰攻击
2.5.2重放攻击
2.5.3设置篡改攻击
2.5.4硬件完整性攻击
2.5.5节点克隆
2.5.6安全和隐私泄露
2.5.7用户安全意识
结语
第3章安全测试原则
3.1被动侦察
3.2物理层或硬件层
3.2.1外设接口
3.2.2引导环境
3.2.3锁具
3.2.4篡改保护和检测
3.2.5固件
3.2.6调试接口
3.2.7物理稳健性
3.3网络层
3.3.1侦察
3.3.2网络协议和服务攻击
3.3.3无线协议测试
3.4Web应用程序评估
3.4.1应用程序映射
3.4.2客户端控制
3.4.3身份验证
3.4.4会话管理
3.4.5访问控制与授权
3.4.6输入验证
3.4.7逻辑缺陷
3.4.8应用程序服务器
3.5主机配置审查
3.5.1用户账户
3.5.2密码强度
3.5.3账户特权
3.5.4补丁级别
3.5.5远程维护
3.5.6文件系统访问控制
3.5.7数据加密
3.5.8服务器配置不当
3.6移动应用程序和云测试
结语
第二部分网络黑客攻击
第4章网络评估
4.1跳入IoT网络
4.1.1VLAN和网络交换机
4.1.2交换机欺骗
4.1.3双重标签
4.1.4模拟VoIP设备
4.2识别网络中的IoT设备
4.2.1通过指纹识别破译密码
4.2.2编写新的Nmap服务探测
4.3攻击MQTT
4.3.1设置测试环境
4.3.2在Ncrack中编写MQTT身份验证破解模块
4.3.3针对MQTT测试Ncrack模块
结语
第5章网络协议分析
5.1检查网络协议
5.1.1信息收集
5.1.2分析
5.1.3原型设计与工具开发
5.1.4进行安全评估
5.2为DICOM协议开发Lua Wireshark分析器
5.2.1使用Lua
5.2.2了解DICOM协议
5.2.3生成DICOM流量
5.2.4在Wireshark中启用Lua
5.2.5定义分析器
5.2.6定义主协议分析器功能
5.2.7完成分析器
5.3构建一个CECHO请求分析器
5.3.1提取应用程序实体标题的字符串值
5.3.2填充分析器功能
5.3.3解析可变长度字段
5.3.4测试分析器
5.4为Nmap脚本引擎编写DICOM服务扫描程序
5.4.1为DICOM编写Nmap脚本引擎库
5.4.2DICOM代码和常量
5.4.3写入套接字创建和销毁函数
5.4.4定义用于发送和接收DICOM数据包的函数
5.4.5创建DICOM数据包头
5.4.6编写AASSOCIATE请求消息Context
5.4.7在Nmap脚本引擎中读取脚本参数
5.4.8定义AASSOCIATE请求结构
5.4.9解析AASSOCIATE响应
5.4.10编写最终脚本
结语
第6章零配置网络的滥用
6.1滥用UPnP
6.1.1UPnP堆栈
6.1.2常见UPnP漏洞
6.1.3在防火墙中打洞
6.1.4通过广域网接口滥用UPnP
6.1.5其他UPnP攻击
6.2滥用mDNS和DNSSD
6.2.1mDNS的工作原理
6.2.2DNSSD的工作原理
6.2.3使用mDNS和DNSSD进行侦测
6.2.4滥用mDNS侦测阶段
6.2.5mDNS和DNSSD中间人攻击
6.3滥用WSDiscovery
6.3.1WSDiscovery的工作原理
6.3.2在网络上伪造摄像头
6.3.3精心打造WSDiscovery攻击
结语
第三部分硬件黑客攻击
第7章滥用UART、JTAG和SWD
7.1UART
7.1.1与UART进行通信的硬件工具
7.1.2识别UART端口
7.1.3识别UART的波特率
7.2JTAG和SWD
7.2.1JTAG
7.2.2SWD的工作原理
7.2.3与JTAG和SWD进行通信的硬件工具
7.2.4识别JTAG引脚
7.3通过UART和SWD黑客攻击设备
7.3.1STM32F103C8T6目标设备
7.3.2设置调试环境
7.3.3在Arduino中编写目标程序
7.3.4刷新并运行Arduino程序
7.3.5调试目标设备
结语
第8章SPI和I2C
8.1与SPI和I2C通信的硬件
8.2SPI
8.2.1SPI的工作原理
8.2.2用SPI转储EEPROM闪存芯片
8.3I2C
8.3.1I2C的工作原理
8.3.2设置控制器——外设I2C总线架构
8.3.3使用Bus Pirate攻击I2C
结语
第9章固件黑客攻击
9.1固件与操作系统
9.2固件的获取
9.3黑客攻击WiFi调制解调路由器
9.3.1提取文件系统
9.3.2对文件系统的内容进行静态分析
9.3.3固件模拟
9.3.4动态分析
9.4后门固件
9.5固件的更新机制
9.5.1编译和设置
9.5.2客户代码
9.5.3运行更新服务
9.5.4固件更新服务中的漏洞
结语
第四部分无线电黑客攻击
第10章短程无线电: 滥用RFID
10.1RFID的工作原理
10.1.1无线电频段
10.1.2无源和有源RFID技术
10.1.3RFID标签的结构
10.1.4低频RFID标签
10.1.5高频RFID标签
10.2使用Proxmark3攻击RFID系统
10.2.1设置Proxmark3
10.2.2更新Proxmark3
10.2.3识别低频卡和高频卡
10.2.4克隆低频标签
10.2.5克隆高频标签
10.2.6模拟RFID标签
10.2.7更改RFID标签
10.2.8使用Android应用程序攻击MIFARE
10.2.9非品牌或非商业RFID标签的RAW命令
10.2.10窃听标签与阅读器之间的通信
10.2.11从捕获的流量中提取扇区密钥
10.2.12合法的RFID阅读器攻击
10.2.13使用Proxmark3脚本引擎自动实施RFID攻击
10.2.14使用自定义脚本进行RFID模糊测试
结语
第11章低功耗蓝牙
11.1BLE工作原理
11.2使用BLE
11.2.1BLE硬件
11.2.2BlueZ
11.2.3配置BLE接口
11.3发现设备并列出特征
11.3.1GATTTool
11.3.2Bettercap
11.3.3枚举特征、服务和描述符
11.3.4对特征进行读/写
11.4BLE黑客攻击
11.4.1设置BLE CTF Infinity
11.4.2开始工作
11.4.3Flag #1: 检查特征和描述符
11.4.4Flag #2: 身份验证
11.4.5Flag #3: 伪造MAC地址
结语
第12章中程无线电: 黑客攻击WiFi
12.1WiFi工作原理
12.2用于WiFi安全评估的硬件
12.3针对无线客户端的WiFi攻击
12.3.1结束鉴权和拒绝服务攻击
12.3.2WiFi关联攻击
12.3.3WiFi Direct
12.4针对AP的WiFi攻击
12.4.1破解WPA/WPA2
12.4.2破解WPA/WPA2 Enterprise以获取证书
12.5一种测试方法论
结语
第13章远程无线电: LPWAN
13.1LPWAN、LoRa和LoRaWAN
13.2捕获LoRa流量
13.2.1设置Heltec LoRa 32开发板
13.2.2设置LoStik
13.2.3将CatWAN USB stick变成LoRa嗅探器
13.3解码LoRaWAN协议
13.3.1LoRaWAN的数据包格式
13.3.2加入LoRaWAN网络
13.4攻击LoRaWAN
13.4.1比特翻转攻击
13.4.2密钥生成和管理
13.4.3重放攻击
13.4.4窃听
13.4.5ACK欺骗
13.4.6特定于应用程序的攻击
结语
第五部分针对IoT生态系统的攻击
第14章攻击移动应用程序
14.1IoT移动应用程序中的威胁
14.1.1将架构分解为组件
14.1.2识别威胁
14.2 Android和iOS的安全控制
14.2.1数据保护和加密文件系统
14.2.2应用程序沙盒、安全IPC以及服务
14.2.3应用程序签名
14.2.4用户身份验证
14.2.5隔离的硬件组件和密钥管理
14.2.6验证启动和安全启动
14.3分析iOS应用程序
14.3.1准备测试环境
14.3.2提取并重新注册IPA
14.3.3静态分析
14.3.4动态分析
14.3.5注入攻击
14.3.6钥匙链存储
14.3.7二进制反转
14.3.8拦截并检查网络流量
14.3.9使用动态补丁避免越狱检测
14.3.10使用静态补丁避免越狱检测
14.4分析Android应用程序
14.4.1准备测试环境
14.4.2提取APK
14.4.3静态分析
14.4.4二进制反转
14.4.5动态分析
14.4.6拦截及检查网络流量
14.4.7侧信道泄漏
14.5使用补丁避免Root检测
14.5.1使用静态补丁避免Root检测
14.5.2使用动态补丁避免Root检测
结语
第15章黑客攻击智能家居
15.1实际入侵一幢建筑物
15.1.1克隆智能门锁系统的RFID标签
15.1.2干扰无线警报
15.2回放IP摄像头视频流
15.2.1了解流协议
15.2.2分析IP摄像头网络流量
15.2.3提取视频流
15.3攻击智能跑步机
15.3.1智能跑步机与Android操作系统
15.3.2控制Android驱动的智能跑步机
结语
附录AIoT黑客攻击工具