物聯網黑客 Practical Iot Hacking: The Definitive Guide to Attacking the Internet of Things

【美】福奧斯·漢齊斯,揚尼斯·斯泰斯,保利諾·卡爾德隆,伊萬傑洛斯·代門佐格,博·伍茲 著 高慧敏 王斌 呂勇 譯

  • 物聯網黑客-preview-1
  • 物聯網黑客-preview-2
  • 物聯網黑客-preview-3
物聯網黑客-preview-1

相關主題

商品描述

"首先介紹了IoT安全領域,介紹了常見的IoT威脅,並提供了一個威脅建模框架,其中包括將體系結構分解為組件並使用攻擊樹來識別威脅。基於此,讀者可以開發一種安全測試方法,發現被動偵察的無聲藝術,並對物聯網系統的所有層進行全面的手動安全評估,進入IoT網絡並執行VLAN跳變,破解MQTT身份驗證,通過濫用UPnP穿透防火牆,開發mDNS中毒程序以及進行WS-Discovery攻擊。 後面的章節專門針對硬件黑客,介紹UART和JTAG / SWD的內部工作原理,並探討如何利用總線協議(SPI、I2C)來攻擊嵌入式IoT設備。作者還深入介紹了無線電黑客,演示了對RFID系統的各種攻擊,例如克隆訪問卡,展示瞭如何開發LoRa交通嗅探器,如何掌握攻擊低功耗藍牙協議的技術。"

目錄大綱

 

目錄

 

第一部分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構建一個CECHO請求分析器

 

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編寫AASSOCIATE請求消息Context

 

5.4.7在Nmap腳本引擎中讀取腳本參數

 

5.4.8定義AASSOCIATE請求結構

 

5.4.9解析AASSOCIATE響應

 

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和DNSSD

 

6.2.1mDNS的工作原理

 

6.2.2DNSSD的工作原理

 

6.2.3使用mDNS和DNSSD進行偵測

 

6.2.4濫用mDNS偵測階段

 

6.2.5mDNS和DNSSD中間人攻擊

 

6.3濫用WSDiscovery

 

6.3.1WSDiscovery的工作原理

 

6.3.2在網絡上偽造攝像頭

 

6.3.3精心打造WSDiscovery攻擊

 

結語

 

第三部分硬件黑客攻擊

 

第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黑客攻擊WiFi調制解調路由器

 

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章中程無線電: 黑客攻擊WiFi

 

12.1WiFi工作原理

 

12.2用於WiFi安全評估的硬件

 

12.3針對無線客戶端的WiFi攻擊

 

12.3.1結束鑒權和拒絕服務攻擊

 

12.3.2WiFi關聯攻擊

 

12.3.3WiFi Direct

 

12.4針對AP的WiFi攻擊

 

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黑客攻擊工具