物聯網裝置是如何被破解的?分析一種篡改IoT韌體內容的攻擊方式
隨著智慧硬體進入到人們的生活,人們的生活質量開始有逐步的提高,人們與智慧硬體之間的聯絡更加緊密。同時,智慧硬體的安全問題也必須引起高度重視,因為其直接影響到人身安全、社會安全和國家安全。
大家是否有想過,自己身邊的硬體裝置有可能已經被植入了惡意程式碼?最近有媒體揭露某公司的水滴攝像頭直播侵犯使用者隱私引發關注。甚至有其他文章爆出大量成人影片出現該公司的水印,酒店室內一些不可描述的畫面被錄製上傳,造成極其惡劣的影響。
圖片來源網路
無獨有偶,CCTV在11月份報道了掃地機器人如何變成“間諜”,駭客利用漏洞偽裝成使用者登入,然後對掃地機器人進行遠端遙控,透過攝像頭和手機的連線實時監控家中的環境 。家用攝像頭的安全風險,除了公開出售IP,甚至還有破解軟體在QQ群中傳播叫賣。
圖片來源網路
美國國土安全部DHS在去年10月就釋出了《保障物聯網安全戰略原則》。今年10月ARM向IETF提交了A Firmware Update Architecture for Internet of Things Devices的草案,如果透過就會成為標準,可以推進IoT安全的發展。同年1月,工信部也在釋出的《物聯網發展規劃(2016-2020年)》提出了物聯網產業未來五年發展的主要任務。 各國都在逐步完善物聯網的政策法規,進一步指導物聯網行業的健康發展,加強物聯網裝置的安全性。
物聯網裝置在哪些場景及環節可能被植入惡意程式碼:
1、物聯網裝置出廠前留有後門或由內鬼批次植入惡意程式碼。這些案例並不新鮮,媒體報道也並不少見。
2、第三方銷售渠道(包括代購)在銷售前篡改軟硬體內容。比如把iPhone5套上iPhone6外殼銷售,又或是在裡面加入後門程式碼等等,對於專業人士,這些並無太大難度。
3、經他人(維修點維修人員、同事朋友、偵探)手後,韌體內容被篡改,待日後獲取使用者隱私,追蹤使用者位置等。
面對層出不窮的物聯網裝置安全事件,頂象技術的安全工程師用msp430開發板來演示一種篡改IoT韌體內容的攻擊方式。
一、模擬通訊場景
1.1 涉及到的硬體
a、實驗所採用的開發板使用的是TI公司的msp430f149晶片。
b、開發板有4個自定義按鍵:S1~S4。
c、開發板有8個LED指示燈:D1~D8。
d、有一個開發板可擴充套件1602LCD液晶顯示屏。
根據開發板硬體原理圖,P6OUT的第0~第7位分析表示D1~D8號LED燈,置0亮燈,置1滅燈。因此,0xFC對應D1和D2亮;
硬體如圖所示:
圖1 開發板以及本實驗中涉及到的硬體部分
1.2 通訊模擬原理
假設有A和B兩個端。當按S1/S2/S3時,從A傳送特定加密資料給B;當按S4時,B接收資訊並解密使用。
由於三組操作的步驟是相似的,這裡只展示
先按S1,再按S4
這組操作的效果展示:
a、按S1鍵。A端將字串“FC”加密傳送給B。
b、按S4鍵。B端讀取資料,然後解密並轉換成整數,賦值給P6OUT。
1.3 具體實現
按S1鍵。A端將字串“FC”加密傳送給B。
int envLen = 0;
char src[10] = {“FC”};
char env[10] = {0};
ENCRYPT(src, strlen(src) + 1, env);
envLen = strlen(env);
SendMsg(env, envLen);
按S4鍵。B端讀取資料,並解密並轉換成整數,賦值給P6OUT,來點亮LED燈。
char* res = NULL;
void* src = NULL;
int32_t srcLen = 0;
char plain[100] = {0};
src = ReceiveMsg(&srcLen);
Decrypt(src, srcLen, plain);
P6OUT = strtol(plain, &res, 16);
1.4 執行結果
圖2 先按S1鍵,再按S4鍵,則點亮D1和D2燈
二、Hook攻擊測試
2.1 Hook原理
攔截Encrypt, 按S1/S2/S3鍵時將加密前後資訊顯示到液晶屏上。
攔截Decrypt, 按S4鍵時將解密前後資訊顯示到液晶屏上。
2.2 Hook實現
對於msp430晶片, 一般廠商在出廠時會燒斷熔絲來防止韌體提取。但事實上msp430晶片只需要支付幾百塊RMB,就可以將熔絲修復,並提取出韌體內容。由於本測試是基於開發板,所以有關於提取韌體的內容就不在這裡詳述了。
首先用工具將韌體內容以TI-TXT的方式dump下來, 然後將用於Hook的opcode植入進去, 然後對TI-TXT檔案完成修改操作。Hook完成後用Beyond Compare檢視TI-TXT的對比如下圖:
圖3 對TI-TXT檔案處理後的對比:左側為原始韌體內容,右側為加入Hook程式碼後的韌體內容
將改後的TI-TXT檔案推回到開發板的晶片中。
2.3 執行結果
注意:按S1的圖中,請無視LED燈(D1~D8),因為這些燈是上次操作S4遺留下來的。S1的操作對LED燈沒有任何影響。
圖4 按S1鍵,在液晶屏上顯示“FC”的加密過程
圖5 在按S1鍵後再按S4鍵,則點亮D1和D2燈,並在液晶屏上顯示“FC”的解密過程
三、IoT安全防護方案
隨著各種IoT(物聯網)裝置的不斷出現,對這些智慧裝置的攻擊也隨之而來。而由於IoT裝置功能的特殊性,這些攻擊帶來的後果更為多樣和嚴重。例如智慧攝像頭被攻破可能帶來家庭或工作隱私影片的洩露,智慧手錶被攻擊可能帶來行動軌跡的洩露,智慧汽車被入侵更是可能直接帶來生命安全的威脅。
頂象技術專家馬濤給智慧硬體購買者一些建議
1、首先,儘量從正規渠道購買信譽較高的產品。
2、其次,裝置出現故障儘量選擇官方指定維修點。
3、再次,自己的有可能涉及到隱私、敏感內容的智慧硬體裝置,如果可能,建議不要讓它單獨經他人之手。
4、最後,建議選擇使用了強度較高安全解決方案的智慧硬體裝置。因為這種裝置的修改韌體的難度極大,安全性更好。
針對IoT韌體的防護,頂象技術從源頭入手透過對IoT裝置上執行的程式進行深入保護,使得攻擊者無法破解其內部工作邏輯,從而保證了這些IoT裝置在複雜、不安全的環境中,仍能按照預設的功能正常、安全的執行。
使用
頂象IoT安全編譯器和頂象IoT安全SDK
可以使hook無法進行,同時逆向破解難度更高,可以做為韌體內容被提取後的最後一道防線。
典型使用場景
為了更好了解物聯網裝置的威脅隱患,保障物聯網的安全執行,
12月22日,頂象技術攜手浙江省物聯網產業協會在杭州舉辦第一屆《物聯網智慧裝置安全防護》研討會。
來自政府和企業的物聯網專家將現場與嘉賓共同分享未來物聯網安全的市場趨勢,探討最熱門的物聯網安全技術;透過實際應用案例分享,使到場嘉賓及客戶充分了解頂象技術在IOT行業頂尖的安全防護方案,
誠邀您的參加!
參會時間:
2017年12月22日下午
參會地點:
杭州市餘杭區文一西路未來科技城海創園會議中心
報名方式:
https://d.eqxiu.com/s/K2EC0Wad?eqrcode=1