注1:本文為湖南底網(wǎng)安全信息技術(shù)有限公司安全團(tuán)隊(duì)原創(chuàng)文章,轉(zhuǎn)發(fā)請(qǐng)注明出處
注2:該文已同步在今日頭條"湖南底網(wǎng)安全"主頁發(fā)布(原"電子技術(shù)論"主頁),鏈接如下:https://www.toutiao.com/article/7197968863081284133/?
前言
固件分析和固件檢測(cè)的技術(shù)“深”不可測(cè),其范疇包括但不限于CPU架構(gòu)類型、指令集、應(yīng)用程序、文件系統(tǒng)、操作系統(tǒng)、驅(qū)動(dòng)、內(nèi)核、boot、die晶圓、集成晶體管電路等等,越往底層越深不可測(cè),其“段位”也越高,“固件分析”和“固件檢測(cè)”如何差異化理解對(duì)于客戶需求理解、甲方固件安全類產(chǎn)品設(shè)計(jì)、乙方固件安全類產(chǎn)品應(yīng)用理念同樣非常重要。
固件檢測(cè)
重點(diǎn)指檢測(cè)平臺(tái)采用“模板”式方式對(duì)固件“特定”內(nèi)容進(jìn)行自動(dòng)化、高效率匹配檢測(cè),如元信息提取、指定文件分析、開源或已知組件漏洞關(guān)聯(lián)檢測(cè)等功能,其特點(diǎn)是“呆板式”、高自動(dòng)化、高效率檢測(cè),換而言之,平臺(tái)“模板”以外、固件“特定”內(nèi)容以外的固件無法檢測(cè),當(dāng)然沒有絕對(duì)的固件“檢測(cè)”,很多廠商提供的固件檢測(cè)產(chǎn)品定會(huì)附帶部分固件分析功能,側(cè)重點(diǎn)不同而已。
固件分析:
行業(yè)內(nèi)人士最先想到的是IDAPro,這只是固件分析的有力工具之一,最重要的是有“目的”的會(huì)用活用這類工具。重點(diǎn)指平臺(tái)具備對(duì)固件所有內(nèi)容或部分內(nèi)容進(jìn)行反匯編逆向解析的能力,平臺(tái)逆向解析的能力包括且不限于:函數(shù)調(diào)用關(guān)系圖(非函數(shù)對(duì)應(yīng)關(guān)系圖)、反匯編指令及對(duì)應(yīng)地址的解析呈現(xiàn)、內(nèi)存數(shù)據(jù)及對(duì)應(yīng)地址的解析呈現(xiàn)、指令的拓展解析(偽代碼、寄存器映射、指令功能注釋等)、指令/RAM的內(nèi)存分布解析、動(dòng)靜態(tài)模擬逆向仿真等能力,特點(diǎn)是強(qiáng)調(diào)平臺(tái)反匯編逆向解析能力、人工分析的結(jié)果。不少國際頂尖安全團(tuán)隊(duì)時(shí)不時(shí)爆出某某設(shè)備或系統(tǒng)的固件高危漏洞或隱患,不僅僅單獨(dú)依托固件自動(dòng)化檢測(cè)平臺(tái)檢測(cè)出來,而主要是靠人工分析、摸索、測(cè)試、挖掘、驗(yàn)證出來。
關(guān)鍵點(diǎn)
固件檢測(cè)、固件分析的結(jié)果能否真正打動(dòng)客戶、撬動(dòng)客戶內(nèi)心尤其是引起客戶高層重視甚至震撼業(yè)界,是爭(zhēng)取客戶、打動(dòng)客戶并贏得口碑的關(guān)鍵。這需要團(tuán)隊(duì)各方面的努力,固件分析服務(wù)前期、中期、末期各階段都不容忽視,也就說所謂的“全生命周期、閉環(huán)理念”。
固件分析工作如何開展?
1.首先要能夠通過各種途徑獲取到分析對(duì)象--固件,固件提取/固件截獲監(jiān)聽/uboot內(nèi)存導(dǎo)出、root權(quán)限下載、廠商索要等都是可以嘗試的方式。
2.明確或嘗試明確固件對(duì)應(yīng)設(shè)備/應(yīng)用功能特點(diǎn)、通信接口、業(yè)務(wù)功能、技術(shù)參數(shù)等信息,初步總結(jié)出固件分析的最終達(dá)到目的。避開設(shè)備/應(yīng)用信息不談的固件分析是“不負(fù)責(zé)任”或“情不得已”的固件分析。
3.確定固件對(duì)應(yīng)處理器的內(nèi)核種類、指令集,明確該固件是應(yīng)用處理器的固件還是微控制器的固件,因?yàn)檫@是兩個(gè)固件分析/檢測(cè)的方向,這一步相對(duì)容易。
4.熟悉固件對(duì)應(yīng)芯片型號(hào),深入分析芯片datasheet,想辦法確定其內(nèi)存分布空間、代碼運(yùn)行機(jī)制、代碼加載/運(yùn)行地址等細(xì)節(jié),這一步較難、很抽象,需要有較深的相關(guān)技術(shù)背景和基礎(chǔ)學(xué)科沉淀。
5.固件逆向分析,這一步是最難、最核心一步,對(duì)技術(shù)基礎(chǔ)學(xué)科、技術(shù)功底、技術(shù)面、心理素質(zhì)、邏輯思維等方面要求極高,尤其對(duì)硬件底層綜合技術(shù)和固件編程正反向技術(shù)開發(fā)能力兼?zhèn)涞囊髽O高(這里涉及的技術(shù)點(diǎn)太多太廣,不展開論述),這也是最容易失敗、遭遇挫折的一步,分析的方法沒有固定也不會(huì)固定,主要靠個(gè)人或團(tuán)隊(duì)經(jīng)驗(yàn),不同的設(shè)備,采取的固件分析方法、思路都不同。千變?nèi)f化、變幻莫測(cè)。
6.“固件分析”相關(guān)的工作開展,除了講究技術(shù)策略、技術(shù)功底外,還有什么很重要?
答曰:發(fā)散思維,最忌諱墨守成規(guī),鼓勵(lì)“自主創(chuàng)新”、“天馬行空”、“頭腦風(fēng)暴”式的探索、挖掘、驗(yàn)證,其實(shí)這和IOT設(shè)備滲透測(cè)試、模糊測(cè)試的思維類似,這句話表面看似好理解,真正能融會(huì)貫通、深入理解運(yùn)用到實(shí)際工作中卻很難,包括我們安全團(tuán)隊(duì)自己也需要不斷學(xué)習(xí)摸索。另外需持續(xù)不斷學(xué)習(xí)“新”的技術(shù)知識(shí),還要不斷鞏固夯實(shí)“舊”的技術(shù)基礎(chǔ)。
7.“固件分析”與“固件攻擊”兩者您能聯(lián)想到什么?
兩者應(yīng)緊密結(jié)合起來考慮,“固件攻擊”是“固件分析”的升華版,以攻促防是“固件攻擊”的核心出發(fā)點(diǎn),也是我們安全團(tuán)隊(duì)的職業(yè)道德準(zhǔn)則,只做固件分析,不考慮固件攻擊,會(huì)有點(diǎn)“虧”,因?yàn)榫邆淞斯碳治龅哪芰?,固件攻擊也近在咫尺,固件分析是服?wù),固件攻擊是固件分析的“反”面教材,直接演示效果,很有“觀賞性”、“警示性”,是最能直接撥動(dòng)客戶高層內(nèi)心“琴弦”的”說客“,也是樹立口碑、品牌推廣最有效、花費(fèi)成本最低的捷徑之一。
關(guān)聯(lián)技術(shù)不可忽略
國內(nèi)或國際頂級(jí)固件分析、硬件底層、網(wǎng)絡(luò)底層安全研究團(tuán)隊(duì),我們堅(jiān)信他們用到的技術(shù)絕非單一、孤成一體,而是靈活多變、有的放矢、借助其它外部關(guān)聯(lián)技術(shù)、工具相輔相成、環(huán)環(huán)相扣、循序漸進(jìn)的開展,包括且不限于KPI密鑰管理體系、嵌入式正向開發(fā)編程、ARM硬件體系架構(gòu)、匯編指令、證書文件編碼格式、加解密算法特征掌握、動(dòng)態(tài)協(xié)議分析驗(yàn)證、標(biāo)準(zhǔn)和非標(biāo)準(zhǔn)安全/非安全協(xié)議(TLS、telnet、ssh、UDS、私有CA認(rèn)證協(xié)議等)熟悉、TCP/IP、CAN、UART、I2C、SPI、USB等各常用總線協(xié)議的理論知識(shí)和實(shí)踐應(yīng)用甚至具備開發(fā)級(jí)能力……太多太多(這是個(gè)漫長的過程,需要個(gè)人及團(tuán)隊(duì)不斷沉淀積累,非一朝一夕之功)。
我們?cè)诜治龉碳r(shí),其對(duì)應(yīng)的設(shè)備種類、功能千變?nèi)f化,沒有上述關(guān)聯(lián)技術(shù)支撐,很難有重大突破,當(dāng)然即便有關(guān)聯(lián)技術(shù)支撐,固件分析整個(gè)過程也很艱辛,尤其是越來越多的芯片廠商逐漸重視固件的防護(hù),矛和盾之間的彼此競(jìng)爭(zhēng)賽跑,誰落后就得“挨打”。
這里著重強(qiáng)調(diào)下TCP/IP底層網(wǎng)絡(luò)攻擊,所謂底層網(wǎng)絡(luò)攻擊,主要是相對(duì)于上層應(yīng)用來區(qū)分的,典型的上層TCP/IP網(wǎng)絡(luò)攻擊包括且不限于:HTTPS截獲篡改攻擊、SQL注入、跨站腳本攻擊(XSS)、DNS欺騙、釣魚網(wǎng)站誘導(dǎo)等等都是TCP/IP應(yīng)用層攻擊,那么TCP/IP底層協(xié)議攻擊包括哪些?又如何理解這些攻擊背后的防護(hù)理念和技術(shù)競(jìng)爭(zhēng)力?
答曰:包括且不限于DHCP攻擊、ARP欺騙、DOS攻擊、TCP半連接攻擊、SYN洪流攻擊、IP欺騙、IP報(bào)文攻擊(如TTL值篡改)、路由表攻擊、MAC欺騙、ICMP協(xié)議攻擊(重定向、IPtrace嗅探)等等,運(yùn)用上述攻擊方法理論知識(shí)并同時(shí)具備TCP/IP驅(qū)動(dòng)層編程能力(類似LINUX或WIN系統(tǒng)內(nèi)核級(jí)TCP/IP編程),就可實(shí)現(xiàn)針對(duì)任意普通局域網(wǎng)內(nèi)(相比軍事網(wǎng)絡(luò)、特定安全防御網(wǎng)絡(luò)而言)任何上網(wǎng)設(shè)備,如臺(tái)式機(jī)PC、筆記本電腦、手機(jī)、工控機(jī)、其它IOT智能聯(lián)網(wǎng)設(shè)備,均可遠(yuǎn)程無接觸、無需授權(quán)即可篡改這些設(shè)備的IP配置信息,如IP地址、DNS、網(wǎng)關(guān)等關(guān)鍵配置,并可獲取該網(wǎng)絡(luò)里所有或指定設(shè)備里各應(yīng)用程序與外網(wǎng)通訊的所有TCP/IP數(shù)據(jù)流(具體可詳見湖南底網(wǎng)安全官網(wǎng)另一篇文章:模擬黑客攻擊視頻),當(dāng)然,也可進(jìn)一步配合架設(shè)外部DNS欺騙服務(wù)器,實(shí)現(xiàn)典型的DNS欺騙攻擊、網(wǎng)頁欺騙攻擊等。
結(jié)束語
上述內(nèi)容均聚焦于固件分析、硬件底層、網(wǎng)絡(luò)底層安全分析、攻防及檢測(cè)三大塊,這三大塊是系統(tǒng)最脆弱、最易被攻擊的地方,雖然現(xiàn)在很多安全公司宣稱有很多安全防護(hù)技術(shù),如沙箱隔離防護(hù)技術(shù)、零信任認(rèn)證體系等,但這些都是基于上層的防御,對(duì)于硬件底層攻擊毫無抵抗之力。固件分析、硬件底層、網(wǎng)絡(luò)底層這三大塊每一塊都是個(gè)重要領(lǐng)域、一門專業(yè),很多公司甚至是設(shè)專人專崗,獨(dú)成一體甚至獨(dú)成一團(tuán)隊(duì),但三者又是相輔相成,你離不開我,我離不開你,我們堅(jiān)信,頂級(jí)的硬件底層安全研究團(tuán)隊(duì),分工明確,看問題、看需求、做事情能大膽創(chuàng)新、融會(huì)貫通、靈活有效運(yùn)用不同技術(shù)方法、技術(shù)策略、技術(shù)驗(yàn)證等手段達(dá)成目標(biāo)。
-
網(wǎng)絡(luò)安全
+關(guān)注
關(guān)注
10文章
3155瀏覽量
59699 -
固件
+關(guān)注
關(guān)注
10文章
555瀏覽量
23016 -
物聯(lián)網(wǎng)安全
+關(guān)注
關(guān)注
1文章
111瀏覽量
17228 -
硬件安全
+關(guān)注
關(guān)注
0文章
13瀏覽量
2460
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論