物聯網韌體逆向分析記錄(初步概念記錄)

2021-10-11 11:12:32 字數 1216 閱讀 3022

20201206 -

機緣巧合,自己居然有生之年又接觸到了這個東西。但是多學點東西也沒什麼壞處,就當擴寬視野了;不過,以前這種事情,都沒有記錄,挺可惜的,所以這次記錄一下。

關於物聯網韌體的分析,涉及的東西還是很多的,可能某個領域的小夥伴會專門去攻擊他web方面的漏洞,通過這個角度來找到資訊洩露,遠端執行的一些漏洞。但是完整的韌體分析並不是這麼片面,涉及的東西還是很廣的。

所以,這裡簡單記錄一些,學習到的一些東西,不是專業認識,僅僅是在看了幾篇文章,幾篇**,記錄下自己的學到的東西。

那麼首先來分析一下,韌體分析有什麼目的呢?本質上,不管是geek自己有興趣想玩一玩這個韌體,或者安全人員為了分析這個產品是否存在漏洞,我覺得都是韌體分析的目的。當然,作為安全的從業人員,分析韌體是否安全,上層的應用程式是否存在漏洞,這些是主要的目的。

但是這種籠統的分析太概念化了,我們都是知道是為了安全,即使是有人為了破解某些功能,這也應該算是廠商對自己的產品限制的一種安全;所以,單單說是為了安全,還是不夠的;應該再進行細分。這裡,我就我了解的東西,來列舉一下,當然肯定是不全的,後續再看到有關的內容的時候(有生之年),再繼續新增上,這裡按照從底層到上層的角度來進行劃分。

以上,就是結合我自身的經驗和理解,總結的一些問題,肯定還有其他的東西。

再展開來說,那就是:

韌體分析,了解執行,了解所使用的檔案系統、核心等資訊,並從中取出完整的韌體

邏輯測試,查詢缺陷,這部分包括韌體本身使用的通用庫的漏洞,或者說iot裝置功能上的漏洞

本文中,將具體針對流程1,2進行分析,關於上層的漏洞,暫時不進行展開。

getting started with firmware emulation for iot devices

乙個系列文章,從二進位制模擬到韌體模擬,然後最後模糊測試。

emulating embedded linux devices with qemu

利用qemu模擬嵌入式裝置的二進位制程式(qemu的使用者模式)

emulating embedded linux systems with qemu

通過將韌體分解出來,然後將其轉移到qemu虛擬機器中,而且此時使用的核心和檔案系統都是預編譯的,不一定時韌體自帶的。(這裡涉及到模擬韌體執行的多種方式)

fuzzing embedded linux devices

模糊測試網頁。

(未完待續)

[1]小公尺路由器3c韌體逆向與測評-新手向

了解物聯網韌體

韌體是一種寫入硬體裝置的軟體,作用是對應用和各項系統功能實施控制。韌體中包含底層 這些 能夠幫助軟體實現對硬體的操作。執行韌體的裝置稱為嵌入式系統,嵌入式系統的硬體資源在儲存能力以及記憶體等方面往往具有諸多限制。韌體通常由 bootloader 核心 檔案系統以及其他資源組成。在嵌入式作業系統中,b...

物聯網裝置韌體獲取

tp link路由器韌體 騰達tenda路由器韌體 輸入產品型號 eg.ac23 小公尺路由器韌體 rom bin files are for flashing from a stock firmware.trx files are for flashing from openwrt.bin字尾檔案...

物聯網IoT安全教程(二) 靜態分析IoT韌體

ps 本文所用到的程式見 得到韌體後,若直接開啟,會發現該韌體被加了密,無法直接解壓縮,這是廠商對該韌體做了保護,防止大家逆向分析他的韌體。通過frackzip工具可以破解該zip的密碼,時間要挺久的,我直接告訴你吧,密碼是beut9z。解壓後發現資料夾中有多個.yaffs2字尾的檔案,這些都是韌體...