物聯網黑客( 簡體 字) | |
作者:【美】福奧斯·漢齊斯,揚尼斯·斯泰斯,保利諾·卡爾德隆,伊萬杰洛斯·代門佐格,博·伍茲 著 高慧敏 王斌 呂勇 譯 | 類別:1. -> 程式設計 -> 物聯網 2. -> 安全 -> 網路安全 -> 駭客攻擊與入侵 |
出版社:清華大學出版社 | ![]() 詢問書籍請說出此書號! 有庫存 NT售價: 595 元 |
出版日:9/1/2024 | |
頁數:352 | |
光碟數:0 | |
站長推薦: ![]() ![]() ![]() ![]() ![]() | |
印刷:黑白印刷 | 語系: ( 簡體 字 ) |
ISBN:9787302668985 | 加入購物車 │加到我的最愛 (請先登入會員) |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證, 繁體書的下載亦請直接連絡出版社) | |
第一部分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協議開發LuaWireshark分析器 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使用BusPirate攻擊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設置BLECTFInfinity 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.3WiFiDirect 12.4針對AP的WiFi攻擊 12.4.1破解WPA/WPA2 12.4.2破解WPA/WPA2Enterprise以獲取證書 12.5一種測試方法論 結語 第13章遠程無線電:LPWAN 13.1LPWAN、LoRa和LoRaWAN 13.2捕獲LoRa流量 13.2.1設置HeltecLoRa32開發板 13.2.2設置LoStik 13.2.3將CatWANUSBstick變成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.2Android和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黑客攻擊工具 首先介紹了IoT安全領域,介紹了常見的IoT威脅,并提供了一個威脅建模框架,其中包括將體系結構分解為組件并使用攻擊樹來識別威脅。基于此,讀者可以開發一種安全測試方法,發現被動偵察的無聲藝術,并對物聯網系統的所有層進行全面的手動安全評估,進入IoT網絡并執行VLAN跳變,破解MQTT身份驗證,通過濫用UPnP穿透防火墻,開發mDNS中毒程序以及進行WS-Discovery攻擊。
后面的章節專門針對硬件黑客,介紹UART和JTAG / SWD的內部工作原理,并探討如何利用總線協議(SPI、I2C)來攻擊嵌入式IoT設備。作者還深入介紹了無線電黑客,演示了對RFID系統的各種攻擊,例如克隆訪問卡,展示了如何開發LoRa交通嗅探器,如何掌握攻擊低功耗藍牙協議的技術。 隨著網絡技術的迅猛發展,我們對IoT技術越來越依賴,但是保障網絡安全的能力卻跟不上IoT技術發展的速度。目前已經知道網絡技術還存在漏洞,計算機系統和企業也會面臨被黑客攻擊的風險,但也正是這些技術在輔助著我們的工作、為我們提供護理服務,并為我們的家庭提供安防。我們對這些設備是如此信任,但它們本質上又是如此不值得信賴,這時要如何自處呢?
網絡安全分析師Keren Elazari曾說過,黑客是“數字時代的免疫系統”。我們需要大量懂技術的人去識別、報告和保護社會免受聯網世界帶來的傷害。這項工作的重要性前所未有,但具備必要的心態、掌握必需的技能和工具的人少之又少。 本書旨在加強全社會的免疫系統,更好地保護所有的人。 全書代碼 1. 本書的寫作方法 IoT黑客的領域覆蓋面很廣,因此本書采取了一種實用的討論方式,聚焦能夠快速開始測試實際IoT系統、協議及設備的概念與技術。書中用于示范的工具和測試的設備都經過了特別的甄選,這些工具與設備價格低廉且獲取方便,非常有利于讀者自行練習。 書中還創建了定制的代碼示例以及進行概念性驗證的漏洞,讀者可以掃描二維碼自行下載。有些練習還附有虛擬機,以便在設置攻擊目標時更加簡單明了。書中部分章節參考了流行的開源代碼的案例,讀者可以從網上很容易地搜索到這些代碼。 本書不是一部IoT黑客工具的指南,不可能涵蓋IoT安全領域的方方面面,況且,一部書中涵蓋如此多的主題需要更大的篇幅,也會太煩瑣以致讀者無法閱讀。因此,本書探討的是最基本的硬件黑客技術,包括與UART、I2C、SPI、JTAG以及SWD的接口。書中分析了各種各樣的IoT網絡協議,并聚焦那些不僅非常重要,而且在其他圖書中尚未被廣泛涉及的協議,包括UPnP、WSDiscovery、mDNS、DNSSD、RTSP/RTCP/RTP、LoRa/LoRaWAN、WiFi和WiFi Direct、RFID和NFC、BLE、MQTT、CDP以及DICOM等。此外,還討論了作者在過往的專業測試工作中解決的一些實際案例。 2. 讀者對象 世界上不可能有兩個人擁有同樣的背景和經驗。但是,對IoT設備進行分析需要橫跨幾乎所有的專業領域,因為這些設備將計算能力和連接性融入了生活的各個層面。本書的哪些部分對哪類人群會更具吸引力是無法預測的。但我們確信,將這些知識奉獻給廣大的讀者,可以讓他們對日益數字化的世界擁有更強的控制力。 本書主要面向安全研究人員,也期望對如下其他人群也能有所裨益。 安全研究人員可以將本書作為測試IoT生態系統中不熟悉的協議、數據結構、組件以及概念的一個參考。 企業的系統管理員/網絡工程師可以學習如何更好地保護他們的設備環境及其公司的資產。 IoT設備的產品經理可以發掘客戶的新需求,并將其融入產品中,從而降低成本,縮短產品進入市場所需的時間。 安全評估員可以掌握一套最新的技能,以便更好地服務于客戶。 好奇的學生可以發現更多的新知識,這些知識會引領他們踏入一個保護人民利益的有價值的事業。 本書假設讀者已對Linux命令行基礎知識、TCP/IP網絡概念以及編碼等有一定的知識儲備。 3. Kali Linux 本書的大多數練習都使用了Kali Linux,該操作系統是滲透測試(penetration testing)中最流行的Linux發行版。Kali擁有各種命令行工具,在使用這些工具時會對其進行詳細的闡釋。如果對操作系統不太了解,建議閱讀OccupyTheWeb的著作Linux Basics for Hackers。 若想安裝Kali,可參考其官網的相關說明,對于版本沒有特定要求。但是,本書中大部分測試練習所用的是2019—2020年的Kali版本。在安裝某種專業工具時,如果遇到困難可以下載Kali的舊鏡像。較新版本的Kali默認不會安裝所有的工具,但可以通過kalilinuxlarge元包(metapackage)進行添加。在終端輸入以下命令就可以進行安裝: $sudo apt install kali-linux-large 同時推薦在虛擬機中使用Kali。詳細的步驟可到Kali官方網站進行查詢,網站中的各種在線資源描述了如何使用VMware、VirtualBox或其他虛擬化技術來實現這一點。 4. 本書結構 本書共15章,分為五部分。大多數情況下,各章之間是相互獨立的,但后面的章節可能會用到前面章節中介紹的工具或概念,建議按章節的順序進行閱讀。 第一部分: IoT威脅全景 第1章IoT安全概覽,描述IoT安全的重要性以及IoT黑客攻擊的特殊性,為本書的其他部分做好鋪墊。 第2章威脅建模,討論如何在IoT系統中應用威脅建模,通過一步步地演示一個藥物輸液泵及其組件的威脅模型的案例,查看可以發現哪些常見的IoT威脅。 第3章安全測試原則,介紹對IoT系統進行全面人工安全評估的框架。 第二部分: 網絡黑客攻擊 第4章網絡評估,討論如何在IoT網絡中進行VLAN跳躍、識別網絡上的IoT設備以及通過創建Ncrack模塊攻擊MQTT認證。 第5章網絡協議分析,提供一種處理不熟悉的網絡協議的方法,介紹針對DICOM協議的Wireshark解析器以及Nmap腳本引擎模塊的開發過程。 第6章零配置網絡的濫用,探討用于自動部署和配置IoT系統的網絡協議,展示針對UPnP、mDNS、DNSSD和WSDiscovery的攻擊。 第三部分: 硬件黑客攻擊 第7章濫用UART、JTAG和SWD,涉及UART和JTAG/SWD的內部工作原理,解釋如何列舉UART和JTAG引腳以及使用UART和SWD黑客攻擊STM32F103微控制器。 第8章SPI和I2C,探討如何利用這兩種總線協議及各種工具攻擊嵌入式IoT設備。 第9章固件黑客攻擊,展示如何獲得、提取和分析后門固件,并檢查固件更新過程中常見的漏洞。 第四部分: 無線電黑客攻擊 第10章短程無線電: 濫用RFID,演示針對RFID系統的各種攻擊,如讀取并克隆門禁卡。 第11章低功耗藍牙,通過簡單的練習展示如何攻擊低功耗藍牙協議。 第12章中程無線電: 黑客攻擊WiFi,討論針對無線客戶端的WiFi關聯攻擊、濫用WiFi Direct的方法以及針對接入點的常見WiFi攻擊。 第13章遠程無線電: LPWAN,介紹LoRa和LoRaWAN協議,展示如何捕獲和解碼這類數據包,并討論針對它們的常見攻擊。 第五部分: 針對IoT生態系統的攻擊 第14章攻擊移動應用程序,回顧常見的威脅、安全問題以及在Android和iOS平臺上測試移動應用程序的技術。 第15章黑客攻擊智能家居,通過描述如何繞開智能門鎖、干擾無線報警系統以及回放IP攝像頭畫面的技術,將全書所涉及的許多想法進行了生動的展示。最后一步步地演示如何獲取一臺智能跑步機的控制權的真實案例。 附錄IoT黑客攻擊工具,列出了IoT黑客流行的實用工具,包括討論過的那些工具以及其他雖然沒有在書中涉及但常用的工具。 編〓者 2021年11月 |