​【IOT安全】IOT韌體安全基礎-韌體模擬介紹

  • 2020 年 3 月 10 日
  • 筆記

聲明:Tide安全團隊原創文章,轉載請聲明出處!文中所涉及的技術、思路和工具僅供以安全為目的的學習交流使用,任何人不得將其用於非法用途以及盈利等目的,否則後果自行承擔!

PS:由於在一次內部分享過程中,未能成功韌體模擬,所以在此補充一文作為韌體模擬入門介紹。

0X01前言

韌體模擬可以在入門學習時更為便捷且能夠節省成本去對韌體進行分析及漏洞利用。在韌體分析學習中所需工具例如firmware-analysis-toolkit等韌體分析工具包安裝及配置步驟較為繁瑣,目前有已有前輩集成好了韌體分析所需鏡像環境。若想自行嘗試安裝Qemu、Firmadyne等工具請參考團隊小夥伴文章物聯網韌體模擬環境的搭建,下文中使用了FIRMADYNE進行韌體模擬,這是一個自動化的可擴展系統,可用於對基於Linux的嵌入式韌體執行進行模擬和動態分析。

0X02Attify OS簡介

用於物聯網設備滲透測試的發行版無需花費時間安裝,配置和設置IoT滲透測試所需的各種工具,而是為您準備了一個預製發行版,其中包含在任何物聯網安全評估或滲透測試中都將方便使用的工具。

Google雲盤AttifyOS下載地址:https://drive.google.com/file/d/0Bz-2-OHt_4gQTkNYb21RRXBuNlE/view**    百度雲盤AttifyOS下載地址:https://pan.baidu.com/s/1Vracsnlt5uNbdmfYK4dp8Q  密碼:tvoh  

集成環境中附帶的工具部分列表:

嵌入式相關工具: Embedded Binwalk Attify Badge tool Baudrate.py Openocd Flashrom Spiflash.py 韌體和軟體: Binwalk: Firmware-Mod-Kit (FMK) Firmware Analysis Toolkit (FAT) radare2 IDA Demo Dex2Jar JADx ROPGadget 無線電工具: GQRX GNURadio Ubertooth-Utils HackRF KillerBee / Attify ZigBee Framework 此外還有些其它工具如下圖中所示,不再一一列舉。

0X03韌體鏡像模擬部署

用戶名:oit 密碼 :attify123 資料庫:postgre 密碼: firmadyne

為了方便後續漏洞復現,我下載了韌體DIR-645韌體二進位文件併到firmadyne工具目錄下運行./fat.py及指定韌體名稱。

接下來工具會多次請求用戶輸入資料庫的口令, 程式完成初始化及鏡像創建並分配IP地址後,FAT將會回饋給我們一個IP地址,並提示用戶已經完成了韌體模擬。我們可以通過該地址進行Web介面訪問,以及通過SSH與韌體進行交互等操作。

訪問給出的地址可以訪問到DIR-645介面。

0X04簡單漏洞復現驗證

我們對DIR-645進行遠程命令執行漏洞使用POC進行簡單復現,該漏洞是通過構造對路由器serviec.cgi的POST請求中的data段來達到遠程執行命令的目的,具體漏洞細節不再進行復現,此處僅為了驗證韌體的模擬效果。

POC下載地址:D-Link_DIR_645POC

簡單歸納下FAT腳本的操作: (1)從韌體中提取文件系統 (2)獲取韌體架構 (3)製作所需鏡像 (4)網路設置 (5)鏡像模擬 至此,一個簡單的韌體模擬流程完畢。 本文僅用於學習研究,切勿用於違法途徑。

0X05參考鏈接

https://www.anquanke.com/post/id/151277 https://blog.attify.com/getting-started-with-firmware-emulation/ https://github.com/adi0x90/attifyos https://bbs.pediy.com/thread-224917.htm

E

N

D