RSA 2018歸來說:那些頗有特色的IoT安全產品和技術

物聯網(IoT)設備正逐漸走進人們的數字生活。IDC市場研究公司表示,IoT智能家居設備將成為第四大行業,預計的消費者IoT支出2018年將達到3900億元人民幣。在4月份舉辦的RSA 2018上,IoT也次成為關注的焦點。不僅微軟、頂象技術分別展示了不同的IoT安全解決方案,更多的安全企業也帶來了一些全新的IoT安全技術和產品。

Refirm labs:30分鐘完成對IoT固件的安全掃描

Refirm labs是一家美國本土的安全廠商,位於美國的馬里蘭州富爾頓,專注於IoT智能設備的固件(firmware)的安全研究與產品研發。該公司成立利於2017年8月,當年11月獲得DataTribe的150萬美元的投資。在RSA 2018的創新沙盒比賽上,Refirm labs參加了最終成功進入ToP 10。

Refirm labs核心研發人員背景來自美國國家安全局(NSA),除了擁有知名開源固件分析工具binwalk外,還推出了一款自動化固件檢測平臺。該平臺能夠自動化掃描固件,發現其中的漏洞、加密用的密鑰、隱藏的後門密碼等,並在30分鐘內給出掃描報告。從而幫助減少隱藏在固件中的漏洞,以避免因弱口令、溢出等漏洞引起設備控制權限的洩露,導致mirai等類似的事件再次發生。

小象認為,30分鐘應該只是一個自動檢測的平均預估值,實際應用場景還要取決於IoT固件大小,以及固件本身是否採取了代碼混淆、加殼等保護措施。

Refirm labs的自動化固件檢測平臺有兩個獨到之處:

1、無需源碼的掃描。以往的安全掃描工具都是針對程序源代碼進行掃描,雖然準確度相對比較高,但客戶往往出於對於源代碼保密的考慮,使用這類產品比較謹慎;而且由於很多程序集成了第三方組件,客戶更是無法取得這部分的源代碼;再有,一個成熟的商業產品固件源代碼往往數量巨大,一次完整掃描是一個費時費力的事情。但使用固件的二進制文件直接進行掃描,則避免了以上所有的問題,而且它使用簡單方便,也避免了洩露源代碼的風險,自然成為用戶體驗更好的選擇。

2、動態掃描。在沒有源碼的情況下進行掃描,客戶可能會質疑掃描的效果,這就要談談Refirm labs的絕技“動態掃描”。傳統的掃描基本以靜態掃描為主,尋找不安全的函數調用、未加密的字符串等。而Refirm labs的動態掃描技術號稱可以針對靜態掃描出來的可疑點,進行動態驗證。比如,掃描出來一個可能導致緩衝區溢出的函數調用,它會動態構造payload進行實際執行,來驗證這是否確實是一個可被利用的漏洞。所以refirm labs宣稱他們的掃描是可以發現0-day漏洞的,而不僅僅是對已知漏洞的一個查找。

RSA 2018歸來說:那些頗有特色的IoT安全產品和技術

Insignary clarity:無需源代碼也能做安全識別與防護

Insignary clarity位於韓國,成立於2016年在韓國成立。它使用獨特的指紋(fingerprinting)技術,可以在二進制級別上進行識別,無需源代碼或逆向工程,讓OEM和開發人員在部署產品前就可以採取適當的預防措施。

與Refirm labs完全不同的是,Insignary clarity掃描固件代碼無需逆向而是採用“代碼指紋”的技術。在RSA 2018上,Insignary clarity就是詳細介紹了該項技術。

眾所周知,對於一個二進制文件要進行掃描,第一步是逆向分析,由此找出關鍵的函數調用序列,或是跟蹤參數的傳遞,然後再試圖找出其中可能存在的漏洞點。

Insignary clarity推出了一種稱為“代碼指紋”的技術。該項技術通過定位代碼中的字符串、函數、變量名等關鍵信息,使用特殊的算法為其生成一個唯一的指紋信息,然後與已知的漏洞數據庫進行對比就可以確定其中存在的漏洞。

不過,該方案有一個缺陷,那就是隻能掃描已知的漏洞,無法掃描出0day。

總體來說,Insignary clarity無需對固件作逆向分析,因此掃描匹配的速度會比較快,非常適合於對合規性有需求的客戶。

RSA 2018歸來說:那些頗有特色的IoT安全產品和技術

Trustonic:為App底層和系統提供防護

Trustonic是一家來自英國TEE硬件解決方案提供商,成立於2012年,由ARM、Giesecke&Devrient和Gemalto聯合創辦。Trustonic旨在為智能移動設備提供可以獨立於操作系統運行的安全產品,隔絕與外部的聯繫,從而避免遭到軟件病毒或者間諜程序的威脅。Trustonic的目標是開發一個安全標準,讓銀行和商家可以用來保證各種各樣的設備和平臺上移動支付及網購的安全。

RSA 2018上,展示了面向App保護的Trustonic Application Protection(簡稱TAP)和保護系統的Trustonic Secured Platforms(TSP)。

TAP能夠為App開發者提供統一的一套保護接口,在底層上提供安全性。它利用硬件TEE芯片的功能,將核心待保護的數據和程序置於TEE芯片中運行,提供硬件級別的安全性。而對於一些未內置硬件TEE芯片的設備,TAP使用軟件構建一套可信的執行環境起到類似的保護效果。同時,在技術上,TAP的可信執行環境利用諸如白盒加密、代碼混淆等組合方案。這樣可以讓App開發者專注於開發,而不必擔心將來App在不同設備上的安全性參差不齊。

小象感覺:TAP的保護思路與頂象技術的虛擬機保護方案異曲同工,而且安全性更優一些。

TSP(Trustonic Secured Platforms)則是針對手機OEM廠商提供的一套軟硬件結合的方案。它能夠為每臺設備生成唯一的可信身份,同時可以保證安裝的第三方應用的安全性、保護系統關鍵代碼的執行和關鍵數據的存儲,此外,還能保護用戶與設備中某些硬件交互過程的安全性,比如用戶對於觸屏的操作,對指紋傳感器的使用等。

RSA 2018歸來說:那些頗有特色的IoT安全產品和技術

Guard Square:同時為Android、iOS和C/C++提供防護

Guard Square是一家來自比利時的移動安全廠商,可能感覺比較陌生。但是,提起去年爆出的Android繞過簽名檢測機制高危漏洞,就想必不陌生了吧?該漏洞就是由Guard Square發現。而且,Guard Square還是大名鼎鼎的ProGuard開發者。該軟件是Google官方開發工具包中默認集成的代碼優化工具,服務全球的Android開發者。

在RSA 2018上,Guard Square帶來了最新版的Android平臺代碼混淆工具DexGuard,最新推出DexGuard-NDK保護插件和iOS平臺代碼混淆工具iXGuard。

首先看DexGuard。DexGurard提供的代碼混淆、資源文件保護、以及各種運行時保護(反調試、模擬器檢測等)功能。DexGuard走的是與App開發工具集成的路線,在編譯階段針對源碼進行深度的混淆保護,而不是編譯後針對APK包進行加固。一方面,保護強度高很多,另一方面因為不需要修改APK包,可以避免很多兼容性問題。

其次看DexGuard-NDK保護插件。由於Java代碼相比C/C++代碼要容易逆向,所以現在越來越多的App開發者已經將核心部分的代碼(比如加解密代碼、核心算法等)遷移到C/C++層來實現。大量攻擊者已經轉向核心的C/C++代碼入手。但是,大部分加固廠商對於APK的保護技術仍停留在以dex文件保護為主的層面。DexGuard-NDK正是通過與NDK開發環境的集成,在編譯階段提供對於C/C++代碼的混淆、字符串加密等保護。

最後看iXGuard。iXGuard是針對近年來iOS App攻擊一直呈現快速上升趨勢而推出。主要提供字符串加密、符號名混淆、控制流混淆、算術混淆。不過,對代碼的混淆一般是基於bitcode進行。

Guard Square官方資料顯示,客戶可以通過Xcode對源代碼進行預編譯,然後對生成的bitcode進行保護,最後再進行一次編譯就可以生成可執行的軟件包。這種方式雖然需要引入編譯器,但只需要提供bitcode,無需提供源碼,所以可結合加固SaaS化服務的便利性和源代碼保護的高安全性。小象相信,這將會是iOS平臺安全發展的熱點方案。

RSA 2018歸來說:那些頗有特色的IoT安全產品和技術

寫在最後

其實,像Guard Square DexGuard、Trustonic Application Protection等技術和功能,在國內公司上已經實現。例如,小象家的Android/iOS雙平臺虛機源碼保護產品,以及針對各種IoT平臺的安全編譯器產品等,而且小象還獨家提供基於虛擬機保護的方案,保護強度比單純的代碼混淆更高。

道高一尺,魔高一丈。隨著攻擊者目光向Android平臺中C/C++代碼的轉移,以及對iOS平臺的持續關注,針對IoT智能設備固件安全的防護也將持續升溫。因為,無論從保護知識產權的角度還是防止黑客攻擊設備的角度,畢竟保護固件安全是IoT智能設備企業的剛需。


分享到:


相關文章: