新聞中心

EEPW首頁 > 汽車電子 > 設(shè)計應(yīng)用 > 破解特斯拉的第一人解密 如何利用CAN 總線來黑掉你的汽車

破解特斯拉的第一人解密 如何利用CAN 總線來黑掉你的汽車

作者: 時間:2016-12-06 來源:雷鋒網(wǎng) 收藏

  是的,只要車有 總線設(shè)計。

本文引用地址:http://butianyuan.cn/article/201612/341161.htm

  先看一下理論分析——汽車 網(wǎng)絡(luò)逆向過程主要分為4個步驟:篩選、定位、破解信號、驗證和保存。

  第一步:篩選

  使用市面上一些 USB- 的工具與汽車的 CAN 總線相連,可以獲取 CAN 總線上廣播的 CAN 數(shù)據(jù)包,從大量數(shù)據(jù)包中進(jìn)行逆向分析,找到想要的 CAN 數(shù)據(jù)包。

  第二步:定位 CAN_ID

  對于車身的某一項功能的控制,只需要一個 CAN ID 的數(shù)據(jù)包即可,這時只需要單純地重放即可達(dá)到攻擊的目的,還有一些功能需要多個 CAN ID 的數(shù)據(jù)包聯(lián)合才可以,還有一些 CAN ID 數(shù)據(jù)包上帶有計數(shù)器,在攻擊時必須加上計數(shù)器才能繞過預(yù)碰撞系統(tǒng)的阻礙。

  第三步:破解信號

  CAN_ID 的數(shù)據(jù)包里一共有8個字節(jié),每一個字節(jié)代表什么以及這些字節(jié)上的數(shù)字都是不固定的,比如速度表上的數(shù)值是根據(jù)公式計算出來的,如果改變成想要的數(shù)值(就是電影里那樣改變速度置人于死地),需要帶入公式才能得到正確的結(jié)果。

  在測試的過程中需要觸發(fā)汽車動作,再確定 CAN_ID 的變化,然后找到對應(yīng)的值,這樣就可以把信號和汽車動作破解出來了。

  第四步:驗證和保存

  結(jié)合上述結(jié)果,做成 FUZZ 工具,進(jìn)而發(fā)現(xiàn)更多的汽車漏洞,如果需要修復(fù)的話,當(dāng)然也是可以的。

  實際操作起來,要不斷解決一些困難。

  劉健皓說:“我們拿一些傳統(tǒng) USB 工具接到車上面,發(fā)現(xiàn)刷屏非???,分析 CAN 協(xié)議時,看執(zhí)行動作,眼睛都要花掉。”

  為了能清晰地分析數(shù)據(jù),沒有工具,那就自己造一個。因此,劉健皓及他的團(tuán)隊造出了一個“CAN—Pick”。這個“CAN—Pick”就是他們口中的“汽車安全總線測試平臺”——測試汽車總線是否安全。

  其實,它也是一個萬能車破解器。

  雖然,它的外表看上去沒有那么酷炫狂拽,僅是一個可以連接車的小黑盒和一個軟件平臺。

  那么,究竟如何操作,這輛車就會被黑掉呢?

  拿著電腦和小黑盒連接到車身,車身在靜止?fàn)顟B(tài)時也會產(chǎn)生一些數(shù)據(jù),這些數(shù)據(jù)被稱為干擾數(shù)據(jù),第一步就是獲得這些干擾數(shù)據(jù)。小黑盒連接上的時候,軟件平臺上就會出現(xiàn)可視化的干擾數(shù)據(jù);然后,操作車燈,獲得車燈操作時的數(shù)據(jù)包,與干擾數(shù)據(jù)進(jìn)行比對,從而發(fā)現(xiàn)真正能夠下達(dá)操作車燈的指令數(shù)據(jù)包。把這個新獲得的數(shù)據(jù)包進(jìn)行重放,那么就可以操作車燈。

  其它操作同理。

  360 車聯(lián)網(wǎng)安全中心另一工程師嚴(yán)敏睿介紹:

  這款軟件支持全平臺,有多種硬件可以進(jìn)行試配,不管是市面上的,還是自己開發(fā)出來的,都會提供 SDK,讓你自己自行進(jìn)行試配。同時可以在線編寫一些插件,這些插件可以共享到服務(wù)端,也可以從服務(wù)端下載一些別人編寫的插件進(jìn)行共享,多個人可以同時對這款軟件進(jìn)行操作。

  這意味著,“全民”可以加入到“黑車”——哦,不,是測試車是否安全的平臺中來。

  

如何利用CAN 總線來黑掉你的汽車

 

  既然 CAN 總線可以被攻擊,這個工具也可以檢測出一輛車是否安全,那么有沒有什么方法可以阻止這一切發(fā)生?

  劉健皓表示,汽車總線設(shè)計之初是在封閉網(wǎng)絡(luò)環(huán)境中使用,并沒有考慮安全問題,對于總線網(wǎng)絡(luò)結(jié)構(gòu)及控制指令的設(shè)計,要增強(qiáng)各 ECU 之間的驗證措施,包括使用時間戳和校驗的方式防止重放破解攻擊,提高控制協(xié)議被逆向的成本,同時要控制好聯(lián)網(wǎng)部件的安全性。

  他們現(xiàn)在的思路是,對 CAN 總線進(jìn)行安全加密,比如,在數(shù)據(jù)包中是否可以插入一些加密算法。劉健皓透露,目前,清華大學(xué)的研究團(tuán)隊也正在對這一領(lǐng)域進(jìn)行研究。


上一頁 1 2 下一頁

關(guān)鍵詞: CAN 特斯拉

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉