99热综合福利导航,久久66日韩,91一二区少妇,久久产国视频,日韩久久久五月精品八区,丰满狐狸精在线电影,一区婷婷久久,日韩欧美另类在线,欧美中文字幕区

星空人工智能技術(shù)網(wǎng)

純干貨!安全謝君:如何能黑掉無(wú)人機(jī)

 

   無(wú)人機(jī)曾一度用來(lái)基礎(chǔ)的地面?zhèn)刹榛蚴强觳偷晁团_……然而從去年開(kāi)始,無(wú)人機(jī)被用來(lái)搭載炸彈運(yùn)送到戰(zhàn)場(chǎng),甚至是被用來(lái)攻擊智能手機(jī)。
   正是因?yàn)槠占懊娴奶岣?,無(wú)人機(jī)也被眾多黑客盯上,他們熱衷于找尋相關(guān)漏洞劫持無(wú)人機(jī)。最近在看雪安全開(kāi)發(fā)者峰會(huì)上,阿里安全I(xiàn)oT安全研究團(tuán)隊(duì)Leader謝君發(fā)表了“如何黑掉無(wú)人機(jī)”這一議題演講,內(nèi)容卻另辟蹊徑講到如何不利用漏洞root無(wú)人機(jī)。
一步步教你黑掉無(wú)人機(jī):看完可千萬(wàn)別下手
    謝君:我分享的議題是如何黑掉某品牌無(wú)人機(jī)。我在研究過(guò)程中從物理接觸和非物理接觸兩個(gè)方面對(duì)整個(gè)無(wú)人機(jī)進(jìn)行系統(tǒng)化的學(xué)習(xí),今天我將分享研究過(guò)程中的一些收獲以及學(xué)到的東西。
    無(wú)人機(jī)是一個(gè)復(fù)雜的系統(tǒng)工程,涉及結(jié)構(gòu)工程、自動(dòng)化控制,空氣動(dòng)力學(xué),計(jì)算機(jī)視覺(jué)處理以及各種傳感器、無(wú)線通訊,以及與星空人工智能相關(guān)的深度學(xué)習(xí)。
    我將整個(gè)系統(tǒng)全部拆開(kāi),發(fā)現(xiàn)其中應(yīng)用了哪些硬件、傳感器、芯片。其中涉及到不同傳感器及控制系統(tǒng),很多嵌入式芯片沒(méi)有OS的概念,所有代碼直接上位機(jī)執(zhí)行,通過(guò)實(shí)時(shí)中斷以及計(jì)時(shí)器和IO的控制來(lái)完成整個(gè)系統(tǒng)的實(shí)時(shí)操作。
一步步教你黑掉無(wú)人機(jī):看完可千萬(wàn)別下手
模塊間通信
    我在此基于某品牌的無(wú)人機(jī)進(jìn)行分析,包括無(wú)線通訊、飛行控制、微機(jī)電傳感器、機(jī)器視覺(jué)處理。實(shí)際上這些微控制芯片來(lái)自不同廠商,要實(shí)現(xiàn)傳感器芯片間的通訊,必須滿(mǎn)足相應(yīng)的通信規(guī)范,才能協(xié)同自如。
所以產(chǎn)商設(shè)計(jì)了一套無(wú)人機(jī)各模塊間的通信協(xié)議,協(xié)議滿(mǎn)足全系列消費(fèi)級(jí)無(wú)人機(jī)的產(chǎn)品,定義不超過(guò)32個(gè)硬件功能模塊,硬件功能模塊下面則可以定義子功能模塊。
一步步教你黑掉無(wú)人機(jī):看完可千萬(wàn)別下手
    比如飛控系統(tǒng)用03表示,06表示飛控系統(tǒng)下的子控制功能,如支持的飛機(jī)起降功能等。再比如攝像頭采集系統(tǒng)是用01編號(hào),云臺(tái)控制系統(tǒng)是用04編號(hào)。在傳輸過(guò)程中,這些編號(hào)將會(huì)通過(guò)算法來(lái)編碼。
    這些不同傳感器間通訊鏈路有多種,通訊協(xié)議可劃分為本地的、通過(guò)串口的、區(qū)域網(wǎng)絡(luò)等,其中運(yùn)用多的通訊協(xié)議分別是logic和V1。logic像進(jìn)程間通訊的方式,V1是不同硬件間遠(yuǎn)程通訊的協(xié)議方式。
    模塊間通信也采用了相應(yīng)的隔離,類(lèi)似現(xiàn)在的汽車(chē)系統(tǒng),汽車(chē)有不同ECU模塊,各個(gè)模塊通訊有一定的通訊協(xié)議和格式,以及網(wǎng)關(guān)隔離某些子系統(tǒng)不允許公共訪問(wèn)。
    而無(wú)人機(jī)里的GPS模塊,只允許飛控系統(tǒng)訪問(wèn),其他應(yīng)用系統(tǒng)則不被允許。
    整個(gè)無(wú)人機(jī)的通訊結(jié)構(gòu),類(lèi)似下圖,不同傳感器間通訊存在一定路徑,且有一定限制。這是無(wú)人機(jī)通訊格式,可以看出存在一定規(guī)范比如一定以55開(kāi)頭,每一個(gè)包的長(zhǎng)度不能超過(guò)固定字節(jié),以及控制命令設(shè)置有一些校驗(yàn)位,且對(duì)每一個(gè)子系統(tǒng)的編碼需要通過(guò)一定算法來(lái)計(jì)算。
一步步教你黑掉無(wú)人機(jī):看完可千萬(wàn)別下手
    無(wú)人機(jī)的核心中心橋的控制板,主要是基于LC1860 SoC所做的控制板,其主要功能是負(fù)責(zé)整個(gè)系統(tǒng)協(xié)調(diào)以及固件更新和攝像內(nèi)容采集、攝像內(nèi)容數(shù)據(jù)壓縮、編碼和圖象深度學(xué)習(xí),IOR檢測(cè)等。
這個(gè)LC1860芯片運(yùn)行嵌入式Linux系統(tǒng),下面是三星的EMCP,其是集LPDDR和eMMc于一體的存儲(chǔ)芯片,也是操作系統(tǒng)存放地方。
    下面這一塊芯片intelMovidusMA2155,是英特爾圖像深度學(xué)習(xí)芯片,因?yàn)闊o(wú)人機(jī)不能聯(lián)網(wǎng),在需要做實(shí)時(shí)機(jī)器視覺(jué)分析時(shí),需要用到大量的矢量運(yùn)行。而此芯片在無(wú)人機(jī)上面的應(yīng)用有視覺(jué)測(cè)距,障礙物識(shí)別以及ROI。當(dāng)該無(wú)人機(jī)進(jìn)行跟隨飛行時(shí),可通過(guò)CNN建立好的深度學(xué)習(xí)模型,進(jìn)行精確判斷。
LATTICE的FPGA芯片,主要用于雙目避障功能,通過(guò)可見(jiàn)光反射回來(lái)檢測(cè)障礙物的存在。
root無(wú)人機(jī)
    在研究IOT設(shè)備時(shí)談到最多的詞就是能否root這臺(tái)設(shè)備,root設(shè)備意味著可以獲得系統(tǒng)很高的控制權(quán)。為什么要root無(wú)人機(jī)?目的是擴(kuò)大攻擊面,更好的研究無(wú)人機(jī)。
而在研究的過(guò)程中,我們發(fā)現(xiàn)root無(wú)人機(jī)最好的辦法是利用合適的漏洞,執(zhí)行打開(kāi)Adb接口功能,就能得到系統(tǒng)的rootshell了。如果沒(méi)有漏洞該怎么辦?有意思的是我們發(fā)現(xiàn)不用漏洞也可以root無(wú)人機(jī)。
其實(shí)此方法可以運(yùn)用到諸多領(lǐng)域,比如某些路由器。研究過(guò)程中我們發(fā)現(xiàn)啟動(dòng)腳本里有一個(gè)變量控制ADB功能能否打開(kāi),默認(rèn)出廠ADB不能打開(kāi)。ADB功能接口在安卓手機(jī)應(yīng)用廣泛,怎樣打開(kāi)此ADB功能,一種是利用漏洞執(zhí)行ADB_en.sh的腳本,另一種方法是直接修改該啟動(dòng)腳本的變量。
    同樣,我們不通過(guò)漏洞的方式root無(wú)人機(jī),因?yàn)榘沧肯到y(tǒng)存在三星EMCP里面,是集內(nèi)存和存儲(chǔ)于一體的EMCP芯片,如果我們可以修改這個(gè)芯片里面的內(nèi)容就可以直接root無(wú)人機(jī)了。
一步步教你黑掉無(wú)人機(jī):看完可千萬(wàn)別下手
    具體操作步驟是:首先找到這塊存儲(chǔ)芯片的位置,用電熱風(fēng)槍把它吹下來(lái),然后用eMMC的讀書(shū)卡讀取內(nèi)容,此時(shí)即找到eMMC讀卡器,把eMMC插到電腦可以看到一個(gè)彈出顯示存儲(chǔ)器里面的空間和內(nèi)容,找到設(shè)置調(diào)試變量的地方,修改后再寫(xiě)到eMCP里面焊回來(lái)。
    有一個(gè)小細(xì)節(jié)是,因?yàn)榇鎯?chǔ)器里的內(nèi)容有分區(qū),需要將這些系統(tǒng)分區(qū)用Ext4的方式掛載,修改后保存,再剪輯切回EMCP的芯片里,后續(xù)我們需要把它焊回去。再運(yùn)行直接ADB打開(kāi),就可以得到root權(quán)限,成功后可以看到它的系統(tǒng)信息和進(jìn)程。
     這一過(guò)程涉及到許多復(fù)雜問(wèn)題,比如要手工脫焊和焊接的過(guò)程,此芯片是BGA封裝,引腳多,引腳間距小,且芯片底座里面人為灌入黑膠,對(duì)操作過(guò)程帶來(lái)很大不便,操作不當(dāng)易使芯片廢掉,手工操作難度極高。
飛控系統(tǒng)
     飛控系統(tǒng),是無(wú)人機(jī)里面的核心。因?yàn)闀?huì)搜集到無(wú)人機(jī)各個(gè)傳感器模塊的一系列數(shù)據(jù),通過(guò)一些綜合算法來(lái)判斷飛控系統(tǒng)應(yīng)該如何操作。
一步步教你黑掉無(wú)人機(jī):看完可千萬(wàn)別下手
    飛控系統(tǒng)核心芯片是ATSAME70Q21,其不需要外置存儲(chǔ)器存儲(chǔ)它的部件以及算法,與之相關(guān)有兩塊IMU陀螺儀以及加速度計(jì),檢測(cè)飛機(jī)處于什么狀態(tài)。
     氣壓計(jì),主要為了檢測(cè)飛機(jī)的高度,作為一個(gè)飛機(jī)高度的判斷因素。
     UbloxGPS模塊,是一個(gè)可編程的模塊,因?yàn)轱w控和GPS通訊有一個(gè)協(xié)議交互,并不是說(shuō)任何一個(gè)GPS模塊都可以替換它,但可以做一些欺騙GPS的事情。
指南針模塊,主要用于方向的定位。
    智能電源,智能電源是用德州儀器MSP430G275516位的微控制芯片,它主要是收集電源現(xiàn)在狀態(tài),保持了何時(shí)放電,何時(shí)通過(guò)飛控系統(tǒng)在電量低于某值時(shí)返航。
電調(diào)芯片,因?yàn)闊o(wú)人機(jī)有四個(gè)螺旋槳,四個(gè)馬達(dá),每一個(gè)馬達(dá)需要一個(gè)電調(diào)的芯片控制轉(zhuǎn)速,控制不同的馬達(dá)的轉(zhuǎn)速,來(lái)達(dá)到控制飛行姿態(tài)以及速度的操作。
視覺(jué)系統(tǒng)
視覺(jué)系統(tǒng),這是無(wú)人機(jī)里面非常重要的功能,里面核心處理芯片是英特爾的MA2155深度學(xué)習(xí)處理芯片。
一步步教你黑掉無(wú)人機(jī):看完可千萬(wàn)別下手
    飛機(jī)搭載攝像頭首先可以進(jìn)行視頻錄制、拍照,圖像內(nèi)容輸出給視覺(jué)處理芯片來(lái)完成視覺(jué)識(shí)別等功能,其中一個(gè)功能是飛行跟隨,即在手機(jī)屏幕上選點(diǎn)跟隨飛行的目標(biāo),無(wú)人機(jī)可以跟隨他/它飛行,此時(shí)時(shí)候就利用芯片強(qiáng)大的深度學(xué)習(xí)能力,對(duì)感興趣的區(qū)域進(jìn)行識(shí)別。
還有一個(gè)功能是測(cè)距,通過(guò)MA2155這塊深度學(xué)習(xí)芯片來(lái)完成視覺(jué)測(cè)距的功能,飛機(jī)前后障礙物的距離通過(guò)圖象識(shí)別的方式識(shí)別出來(lái)。
另一個(gè)功能是雙目避障,這是觀測(cè)傾斜度70度是否有障礙物,通過(guò)發(fā)射端發(fā)射出去的光反射回來(lái)在接收端接受。
超聲波可檢測(cè)下方障礙物以及檢測(cè)地面。
無(wú)線通信系統(tǒng)架構(gòu)
    無(wú)線通訊,是無(wú)人機(jī)里面最核心的一塊功能,也是最復(fù)雜的一塊功能,涉及到控制系統(tǒng)和圖象傳輸?;驹砭褪乔岸说氖瞻l(fā)器收到信號(hào),通過(guò)基帶系統(tǒng)進(jìn)行解碼,解碼后通過(guò)搖控器的LPC1549芯片處理進(jìn)而通過(guò)Cypress的USB芯片反饋到手機(jī)上。
    無(wú)線通訊是通過(guò)OFDM方式進(jìn)行圖傳以及數(shù)控的傳輸,其特點(diǎn)是控制通道數(shù)據(jù)通過(guò)遙控器通過(guò)1Mhz帶寬的跳頻發(fā)送,飛機(jī)回傳的圖象和控制通道回傳數(shù)據(jù)通過(guò)10Mhz帶寬進(jìn)行定頻傳輸。
    為了保證數(shù)控通道及時(shí)性,采取定時(shí)跳頻的方式。因?yàn)橛锌赡苄盘?hào)會(huì)被干擾,在某一個(gè)特定頻點(diǎn)時(shí)會(huì)被干擾,如果被干擾的話(huà),飛機(jī)可能收不到遙控器的一些數(shù)據(jù),此時(shí)我們需要切換不同的頻點(diǎn),找信噪比高的地方,保證它的可靠性。
它在FCCID通信管理局申請(qǐng)的5G頻段的頻寬執(zhí)照在5727-5821Mhz,但實(shí)際上,其操作已超過(guò)通訊管理局規(guī)定的頻段。在我們研究過(guò)程中發(fā)現(xiàn)濫用這個(gè)頻段的資源已達(dá)5845Mhz。遙控器與飛機(jī)如何進(jìn)行識(shí)別,需要配對(duì)及連接過(guò)程。
配對(duì)的唯一信息來(lái)自遙控器,所有信息都是遙控發(fā)給無(wú)人機(jī),配對(duì)成功后可以在操作過(guò)程中識(shí)別到哪個(gè)是我控制的無(wú)人機(jī),且這些控制配對(duì)信息皆通過(guò)搖控器芯片LPC1549的序列號(hào)生成。
一步步教你黑掉無(wú)人機(jī):看完可千萬(wàn)別下手
    基本上無(wú)線通訊架構(gòu)的過(guò)程,首先是搖控器先初始化芯片,然后初始化基站系統(tǒng)各個(gè)寄存器,寄存器里存入了唯一可以配對(duì)碼的信息。這個(gè)配對(duì)碼有五個(gè)字節(jié),寫(xiě)入到寄存器里面,真正用到只有三個(gè)字節(jié),所以就有可能無(wú)線期劫持無(wú)人機(jī)。
    無(wú)線通訊傳輸?shù)倪^(guò)程其實(shí)是非對(duì)稱(chēng)傳輸,無(wú)人機(jī)遙控器發(fā)的信息跳頻傳輸給飛機(jī),接收端也是跳頻接收,但是圖傳和下行通道是由飛機(jī)以定頻的方式發(fā)送,且這些跳頻算法都是通過(guò)代碼來(lái)實(shí)現(xiàn)的。
    下圖即遙控器用于檢測(cè)飛機(jī)是否配對(duì)的算法檢測(cè)基帶芯片SPI地址0xE4、0xE5、0xE6進(jìn)行比較。所以劫持一臺(tái)無(wú)人機(jī),我們可以通過(guò)暴力破解的方式,用所有的密鑰空間進(jìn)行離線的破解,找到配對(duì)碼,去控制無(wú)人機(jī),在控中時(shí)候就可以動(dòng)態(tài)改掉配對(duì)碼,讓這個(gè)無(wú)人機(jī)屬于你。
無(wú)人機(jī)反調(diào)對(duì)抗技術(shù)
   我們也發(fā)現(xiàn)了一些硬件的反調(diào)技術(shù)和軟件的反調(diào)技術(shù),比如說(shuō)用atmel芯片的安全位置1,可以阻止外置硬件仿真器的掛載調(diào)試,遙控器的LPC1549通過(guò)ADC的粒度檢測(cè)來(lái)檢測(cè)調(diào)試器,LightBridge用的stm32F103芯片通過(guò)remapSWD IO來(lái)使用swd調(diào)試接口失效,通過(guò)遙控器的硬件開(kāi)關(guān)電路來(lái)阻止LPC1549芯片硬件仿真調(diào)試。
一步步教你黑掉無(wú)人機(jī):看完可千萬(wàn)別下手
    最后還有很多工作還沒(méi)有來(lái)得及做,未來(lái)我們會(huì)更加深入的研究各個(gè)硬件模塊的功能hacking以及進(jìn)行一些想法的驗(yàn)證工作。

星空人工智能技術(shù)網(wǎng) 倡導(dǎo)尊重與保護(hù)知識(shí)產(chǎn)權(quán)。如發(fā)現(xiàn)本站文章存在版權(quán)等問(wèn)題,煩請(qǐng)30天內(nèi)提供版權(quán)疑問(wèn)、身份證明、版權(quán)證明、聯(lián)系方式等發(fā)郵件至1851688011@qq.com我們將及時(shí)溝通與處理。?。?a href="/">首頁(yè) > 星空人工智能產(chǎn)業(yè) > 低空經(jīng)濟(jì) » 純干貨!安全謝君:如何能黑掉無(wú)人機(jī)

()
分享到:

相關(guān)推薦

留言與評(píng)論(共有 0 條評(píng)論)
   
驗(yàn)證碼:
罗定市| 泌阳县| 武宁县| 报价| 宣武区| 安新县| 黄山市| 嵊州市| 三穗县| 黑龙江省| 齐河县| 镇宁| 福安市| 水城县| 聂荣县| 北票市| 宁德市| 桦甸市| 根河市| 翼城县| 龙胜| 高台县| 德清县| 和平区| 北碚区| 凉城县| 永春县| 万山特区| 华亭县| 玉树县| 翁牛特旗| 资源县| 庆阳市| 太保市| 灵台县| 松阳县| 泽州县| 确山县| 淅川县| 绍兴市| 泸州市|