卡巴斯基實驗室的安全研究人員最近發現:黑客可以僅僅通過侵入Android車控App輕易解鎖汽車,上百萬汽車深陷被竊危機。
汽車控制App現在越來越流行了,這些應用可以幫助用戶通過手機就能定位車的GPS位置、追蹤汽車行駛路線、鎖車、啟動發動機和提前打開一些輔助設備等等功能,像是一些受歡迎的汽車品牌動輒就有超過上百萬用戶。
但是在研究人員分析了7款流行車控App之后發現,這些應用缺乏適當的安全功能。
7款應用評測
匿名監測了7款App后,研究人員發現這些應用缺乏基本的安全功能,才讓用戶暴露在被入侵的風險之中。他們主要將分析的重點放在:一旦用戶的手機已經被惡意軟件感染,有什么可實施的對策?
如下圖所示:所有被測應用都沒有使用代碼混淆處理,此功能可加大入侵者逆向分析代碼的難度;也無任一應用進行了代碼完整性檢查,這一功能可以防止代碼被惡意篡改。缺乏的安全功能還包括:為應用程序窗口進行覆蓋保護,檢驗root權限,App完整性檢查。
2款車控App未加密存儲在本地的登錄憑證,4款應用僅僅加密了密碼。同時,這些App還將每輛車的唯一識別號碼(VIN),甚至還有車牌號都以明文.xml格式和用戶名、密碼一起儲存在設備上,這種錯誤都是十分危險的。
像是使用overlay保護技術來防止其他應用覆蓋合法應用顯示某些釣魚頁面。這種覆蓋攻擊是移動惡意軟件常用的,入侵者通過在App使用界面上層偽造一個登錄界面,就為了欺騙用戶自己輸入登錄憑證。
App也不會去檢驗用戶是否擁有root權限,所以一些應用可能很容易就被逆向編譯,入侵者可以讀取App代碼或將調試數據儲存在手機SD卡中。
更有趣的是,竟然沒有一個車載App會檢測是否設備已經被rooted,即某些用戶由于在一些非官方的App商城下載應用而導致手機被開了后門。
偷車并不難
一旦Android車控App被黑了,入侵者就可以遠程解鎖汽車并關閉警報系統。
“理論上來說,入侵者在竊取憑證之后就可以獲得對汽車的控制權了,但并不意味著他就能這么簡單地把汽車開走。在這種犯罪條件下,最關鍵的還是啟動汽車。因此,在入侵者上車之后,還需要使用一個編程單元在車載系統重新編寫一個新密鑰。現在再讓我們回想一下,幾乎所有的車控應用都允許解鎖車門,那么就意味著汽車報警系統沒用了。因此,入侵者可以在不觸發任何警報的情況下就偷偷摸摸的迅速偷車。”
雖然以明文的形式來儲存登錄憑證很明顯是一個新手才會犯的錯,但是安全研究人員指出每個車控App都需要車主利用SMS短信或車主聲控的允許才能解鎖汽車也不是什么好辦法。每個App存在一個白名單,只有白名單上的手機號碼才被允許控制汽車,然而,就算有白名單的存在,入侵者依然有獲取root權限或偷偷在用戶手機安裝木馬來竊取詳細登錄信息等手段。一旦成功竊取登錄信息,入侵者就能在車附近使用其他設備登錄,同時禁用用戶手機的揚聲器和屏幕,所以用戶根本不會意識到自己的車已經被其他設備登錄控制了。
“此外,車主所面臨的風險并不僅限于車被偷,如果有入侵者在訪問汽車之后惡意篡改某些元素很有可能還會造成交通事故,導致人員傷亡。”——卡巴斯基
卡巴斯基的安全專家警告:車控App的安全問題不能再被忽略了,這些隱患的存在簡直是為偷車賊提供了絕妙的機會。應該參考銀行使用的應用來對這些車控App進行安全配置。
“車本來就是一種昂貴的工具,所以對待車輛安全的態度應該不亞于對銀行賬戶。”卡巴斯基研究專家提到。