精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

嵌入式設備PCB級逆向基礎技術

fcsde-sh ? 來源:張飛實戰電子 ? 2023-05-05 11:10 ? 次閱讀

前言

本文介紹一些實用的PCB硬件逆向的基礎技術,可用于研究者和白帽團體分析未知的硬件。SEC Consult運營的硬件安全專用實驗室是SEC Consult安全實驗室的一部分。下面展示的研究只是硬件實驗室眾多研究中的冰山一角。

今天,我們生活在一個被嵌入式設備統治的世界中。每個人都可能生活在各種各樣的窺探、監控中。受安全漏洞影響的路由器、網絡攝像頭、智能手機和其他嵌入式設備,是極易被攻擊的。最近爆發的Mirai病毒事件和其他LoT惡意軟件更加說明了這一點。無論是出于好奇還是應顧客要求進一步提高產品的安全性,想要深度審計該類設備的固件,我們都需要拆卸下來,好找到調試接口。只有通過對系統進行調試和運行,才能揭示其中的隱秘之處。由于該過程具有一定的破壞性,故通常會對設備造成損壞。因此,要想進行深入的分析,僅準備一臺設備是不夠的!

如何從熟知的設備開始?

為了節省昂貴的嵌入式分析費用,一個簡單快捷方法是替換固件。大型公司很容易在引進大批IoT設備之前委托安全咨詢公司對該產品的內置固件進行測試,以此最大程度地降低系統的安全風險。不過,對用戶和業余愛好者來說,選擇并不多,他們能安裝的固件多來源于第三方如OpenWRT。盡管這些固件的性能不見得一定比原生的(原生固件是針對該專有芯片指令集開發的)更加出色,但在安全性方面,確實如此。當我們在完成對已知設備的安全審計的任務時,硬件分析的部分通常簡化為在網上的相關論壇(通常是OpenWRT Wiki)尋找相關資料

硬件黑客——識別無文檔設備的調試接口

要對一個完全未知的普通設備刷寫固件,簡直就是一個難以完成的任務。故而,我們需要逐步剖析硬件電路,以便檢查其所用的固件及檢測固件的安全漏洞。不過,對硬件電路進行逆向工程并不是一件簡單的事,尤其是專有芯片集電路,好在一些基本的分析技術還是適用的。在我們的例子中,Broadcom(博通公司)的SoC作為Belkin F9 K1106as(Belkin:貝爾金公司)無線中繼器的核心部件。我們用該設備作為例子并不是我們對它別有興趣,而是它的芯片集也用在眾多社區支持的其他設備上。為了識別該SoC的引腳,我們將它接上專用電源。打開設備的外殼,便是PCB板了。我們第一個目的是串行連接到設備,以獲得shell或至少訪問到引導裝載程序。

1509d13e-e629-11ed-ab56-dac502259ad0.jpg

圖:Belkin F9 K1106as PCB圖及其不同模塊

要識別金屬防護罩保護的模塊,最簡單的辦法是拆掉防護罩。

15135f7e-e629-11ed-ab56-dac502259ad0.jpg

圖:用鉗子打開靜電防護罩

僅為了逆向分析出隱藏在PCB板上的調試引腳接口,我們不必將全部的防護罩拆除。借助暴露在PCB上的UART接口(譯者注:通用異步收發器,詳見百度百科)可以實現最初的調試,因為把UART直接接到以11520 Baud 8n1為終端的FT2322H板上,可以獲取得root shell。相比于其他接口,很容易就可以辨認出UART,它只有兩個針腳,接收端及發送端。進行串行通信并非總是UART,但這能幫助我們縮小可能性。一組3-5針的引腳通常是UART接口,這是開發PCB時預留的。

UART通常的引腳排布為(GND|RX|TX|VCC)或(GND|TX|RX|VCC)。

那JTAG(譯者注:聯合測試工作組,詳見百度百科)在哪呢?該標準允許開發者或有經驗的黑客輕易地控制CPU、在運行階段調試SoC和對flash進行讀取和編程以及運行自檢測試。這個問題可以如此作答:用JTAG暴力工具。SEC Consult開發的工具(包括硬件和軟件)附帶有該功能,當然,網絡上也有許多用于該目的的工具。由于有效的調試針腳為4-5針,PCB板上部的10個針腳看起來像是JTAG。

151939c6-e629-11ed-ab56-dac502259ad0.jpg

圖:暴力檢測JTAG針腳

15257a60-e629-11ed-ab56-dac502259ad0.jpg

圖:SEC Consult安全實驗室開發的硬件分析工具“SEC Xtractor”

經過暴力檢測后,終于找出了針腳!為了保持完整性,也標記了UART接口。

152c5830-e629-11ed-ab56-dac502259ad0.jpg

圖:JTAG引腳

至于JTAG適配器,用的是廉價的迷你FT2322H模塊。

15366d20-e629-11ed-ab56-dac502259ad0.jpg

圖:通過迷你FT2232H模塊連接到JTAG

連接到OpenOCD的請求給出了如下結果:

153bb78a-e629-11ed-ab56-dac502259ad0.jpg

圖:OpenOCD輸出

該芯片似乎有一個ID為0x2535717f的32位的指令寄存器。此前,我們所知的僅是該Broadcom SoC標簽為BCM5358UB0KFBG。現在,我們有更多的了解了——不過是針對該具體的設備;JTAG接口可以用來控制芯片及對系統底層的訪問。

硬件黑客——抓取固件

提取固件,是完善該SoC信息池的最后一步。一個Macronix的串行flash芯片安裝在PCB背面。花幾分鐘用flashrom和FT2322H即可讀取出其中的內容。從datasheet上可以快速找出其引腳定義:

1545496c-e629-11ed-ab56-dac502259ad0.jpg

圖:Macronix SPI flash芯片引腳

將flash芯片從PCB板上取下后,置于轉接器上并啟動flashrom:

1552b6f6-e629-11ed-ab56-dac502259ad0.jpg

圖:用flashrom讀取SPI存儲器

轉儲文件包括整個程序存儲器和暫存數據(NVRAM)。用flashrom重寫固件并芯片焊接回去是刷第三方固件的另一種方法。通過調用“binwalk-Adump.bin”,得到許多的“MIPSEL”(MIPS little endian)指令,這讓我們不禁假設:該Broadcom SoC 是基于通用MIPSEL32 CPU的。SOP封裝的串行flash芯片是最容易讀取的flash,更具挑戰性的NAND和NOR flash芯片,由于其復雜的接口、狹小的封裝和數目眾多的引腳,操作起來甚是困難。

通過IoT Inspector對轉儲文件進行初步分析顯示,該固件存在一些基本的安全風險,同時也獲取到該設備使用的軟件信息。由于我們分析的是老舊設備,一些安全漏洞可以追溯到2007年:

15588a5e-e629-11ed-ab56-dac502259ad0.jpg

圖:IoT Inspector報告摘錄

硬件黑客——逆向SoC引腳

正如先前所述,如果得到了SoC的引腳定義,那么我們將可以對任何使用BCM5358UB0KFBG的設備進行逆向。為此,大多數情況下我們可以用熱風槍將BGA封裝的芯片拆焊下來。

156295d0-e629-11ed-ab56-dac502259ad0.jpg

圖:熱風槍返修臺

156b45b8-e629-11ed-ab56-dac502259ad0.jpg

圖:拆下SoC后的Belkin PCB

根據SoC的引腳連接情況,結合datasheet的相關資料以及針腳對地/電源(GND/VCC)電壓的測定和邏輯推斷,我們得出該芯片部分重要引腳的功能定義。

157df136-e629-11ed-ab56-dac502259ad0.jpg

圖:BCM5358U0KFBG芯片部分引腳功能定義

顯然,BCM535x系列芯片有著相似的引腳定義。https://wikidevi.com網站收集有計算機硬件的相關信息,當然也包括Broadcom SoC系列。我們找到了下面的條目:

1584a10c-e629-11ed-ab56-dac502259ad0.png

圖:來源: https://wikidevi.com

觀察包含該類芯片的其他路由器的圖片可以發現,芯片的引腳功能都是大同小異。

Wikidei網站包含眾多硬件的相關信息,除此之外,制造商提供的相關文檔也非常詳盡。中國似乎是唯一一個各個品牌路由器的生產國。

硬件黑客——來自中國的供應鏈

所有這些中國制造的電子產品,芯片、外圍設備、路由器等,經常是由同一家工廠組裝完成的。結果很明顯,這些產品的質量都在一個等級,一些工廠也為相互競爭的市場供應商生產產品。我們來看看兩張華碩RT-N53路由器和Belkin F9 K1106無線中繼器的內部圖片。這PCB板上的標識簡直就是一摸一樣,是不是?

158e501c-e629-11ed-ab56-dac502259ad0.jpg

圖:華碩PCB,來源:https://apps.fcc.gov/

15980a80-e629-11ed-ab56-dac502259ad0.jpg

圖:Belkin PCB

巧合嗎?并不像啊。這些標識的字體是ELCAD(電腦輔助電子設計)軟件默認設置的,如果不是強制要求,開發者是不會去改動的。這意味著相同的模板重用于華碩PCB的開發,甚至更多其他供應商。因此,同一家ODM(原設計制造商)負責設計制造包括Belkin在內各品牌的產品。

在嵌入式設備生產中,這并不是什么不常見的生產形式,尤其是對于來自US的公司。其中的固件多半也是亞洲供應商基于標準的亦或是定制的SDK開發的。

審核編輯:湯梓紅
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • pcb
    pcb
    +關注

    關注

    4317

    文章

    23004

    瀏覽量

    396256
  • 嵌入式
    +關注

    關注

    5068

    文章

    19017

    瀏覽量

    303248
  • 接口
    +關注

    關注

    33

    文章

    8497

    瀏覽量

    150834
  • uart
    +關注

    關注

    22

    文章

    1227

    瀏覽量

    101172
  • 嵌入式設備
    +關注

    關注

    0

    文章

    110

    瀏覽量

    16931

原文標題:嵌入式設備PCB級逆向基礎技術

文章出處:【微信號:fcsde-sh,微信公眾號:fcsde-sh】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    嵌入式Linux下的USB設備驅動技術

    嵌入式Linux下的USB設備驅動技術 Linux以其穩定、高效、易定制、硬件支持廣泛、源代碼開放等特點,已在嵌入式領域迅速崛起,被國際上許多大型的
    發表于 05-08 08:30 ?1830次閱讀
    <b class='flag-5'>嵌入式</b>Linux下的USB<b class='flag-5'>設備</b>驅動<b class='flag-5'>技術</b>

    如何實現基于Agent技術嵌入式智能設備測試?

    如何實現基于Agent技術嵌入式智能設備測試?基于Agent的嵌入式智能設備測試系統是如何構成的?
    發表于 04-15 06:14

    視頻教程-《嵌入式技術 基礎課程》之逆向-X86匯編-其他 精選資料分享

    嵌入式技術 基礎課程》之逆向-X86匯編 2008年畢業于沈陽航空航天大學...
    發表于 07-19 08:17

    嵌入式設備的本質是什么?

    近幾年來,隨著移動互聯網、物聯網的迅猛發展,嵌入式技術無處不在,籠罩著各行各業,在通訊、網絡、工控、醫療、電子等領域發揮著越來越重要的作用。隨著嵌入式技術及相關產品不斷滲透到人們日常生
    發表于 10-27 06:40

    嵌入式外圍設備有哪些?

    選擇填空判斷嵌入式系統的定義和特點定義:以應用為中心,計算機技術為基礎,軟硬件高度定制,適用于對功能、能耗、成本、體積、可靠性有嚴格要求的專用計算機系統特點:專用性可靠性實時性低功耗可裁剪嵌入式系統
    發表于 10-27 08:43

    基于藍牙應用的嵌入式設備

    的發展.其中藍牙技術就是一個典型的例子.它的無線通訊方式使得各類數據的傳輸和交換變得越來越便捷.以此同時,各類基于藍牙應用的嵌入式設備迅速成為炙手可熱的消費類電子產品.特別是藍牙的音頻技術
    發表于 11-05 06:06

    嵌入式技術是什么

    一、嵌入式開發概述1**.嵌入式技術是什么?**嵌入式技術是以應用為中心,以計算機技術為基礎,并
    發表于 12-17 06:06

    物聯網智能設備嵌入式技術是什么?

    物聯網智能設備嵌入式技術是什么?
    發表于 12-23 07:24

    ARM嵌入式入門教程

    ARM嵌入式入門教程 本書由淺入深、通俗易懂地講解了嵌入式Linux的系統設計與開發。全書共25章,從嵌入式處理器ARM開始,講解了ARM處理器的資源、ARM的指令
    發表于 03-09 14:39 ?141次下載

    基于嵌入式設備遠程在線升級技術的研究

    基于嵌入式設備遠程在線升級技術的研究
    發表于 10-31 10:50 ?16次下載
    基于<b class='flag-5'>嵌入式</b><b class='flag-5'>設備</b>遠程在線升級<b class='flag-5'>技術</b>的研究

    TI的嵌入式分析技術使設備更加智能

    嵌入式分析技術嵌入式系統和人類感官結合起來,使系統能夠分析信息,做出智能決策。盡管嵌入式分析技術吸引了廣泛的行業,但大多數
    發表于 04-13 16:28 ?13次下載
    TI的<b class='flag-5'>嵌入式</b>分析<b class='flag-5'>技術</b>使<b class='flag-5'>設備</b>更加智能

    嵌入式技術之工業嵌入式系統的應用

    物聯網應用技術中,嵌入式技術是至關重要的。但是,至少有60%的人不了解什幺是嵌入式技術
    發表于 04-07 11:18 ?1745次閱讀

    嵌入式設備固件的安全分析和測評技術

    繁多、專用性強、源碼或設計文檔往往不公開、運行環境受限等諸多因素的影響,通用漏洞挖掘技術無法直接適配。近年來,國內外安全專家和學者針對嵌入式設備及其固件的安全分析和測評技術提出了很多切
    發表于 06-07 16:31 ?8次下載

    嵌入式總結

    嵌入式總結版嵌入式系統? 嵌入式系統上的軟件具有結構精簡,代碼輕量化,占用存儲資源少的特點。? 嵌入式系統和計算機操作系統的共同特征是:
    發表于 10-20 14:51 ?8次下載
    三<b class='flag-5'>級</b><b class='flag-5'>嵌入式</b>總結

    嵌入式設備PCB逆向基礎技術

    本文介紹一些實用的PCB硬件逆向的基礎技術,可用于研究者和白帽團體分析未知的硬件。SEC Consult運營的硬件安全專用實驗室是SEC Consult安全實驗室的一部分。
    的頭像 發表于 06-30 17:15 ?657次閱讀
    <b class='flag-5'>嵌入式</b><b class='flag-5'>設備</b><b class='flag-5'>PCB</b><b class='flag-5'>級</b><b class='flag-5'>逆向</b>基礎<b class='flag-5'>技術</b>