ofo 這回又該愁了,。 繼 ofo 第一代機械鎖被曝存在“記住密碼就能免費騎”漏洞后,,最新一代 ofo 電子鎖也被破解了。 今天(2017年9月6日)上午,,在一個名為 “Xpwn 未來安全盛會”的黑客大會上,,百度安全實驗室的研究員小哥高樹鵬(業(yè)內(nèi)花名:小灰灰)和黃正展示了破解 ofo 小黃車最新一代電子鎖的技術(shù),。 呃不不不不,放錯圖了不好意思,,這是第一代機械鎖,,我們今天說的是第二代電子鎖。 一人,,一臺電腦,,一個簡單的設備,不到1分鐘,,咔噠一聲響,,破解完成。 淺黑科技謝幺有幸觀看了破解現(xiàn)場,,并第一時間勾搭上了百度安全實驗室的小灰灰和黃正本人,。 本文將讓你看懂破解 ofo 小黃車背后的技術(shù)原理和故事。 1.為什么選擇的破解對象是OFO小黃車而不是別的 ,? 小灰灰:共享單車最近火得不行,作為我們生活中最常見的智能設備之一,,自然就成為我們研究的對象了,。(翻譯:啥火研究啥) 破解OFO,是因為我們覺得 ofo 是目前市場占有率是 Top1,,所以就拿它作為目標了,。做技術(shù)研究當然要選擇影響范圍最廣的產(chǎn)品,同時也是對我們技術(shù)實力的證明,。 比如今天上半年,,百度安全實驗室在 Geekpwn 大會上還破解過某款廣泛應用于自如、小豬,、途家等公寓的智能門鎖,,也是市場占有率第一的。 謝幺:破解一個小眾的設備,,都不好意思拿出來說,,是這個意思嗎? 小灰灰:你這個人啊,,瞎說啥大實話,?!不過話說回來,,這可能是第一個影響千萬級單體設備的破解,。 2.破解過程用到了哪些技術(shù)原理,,大致流程是怎樣的呢? ofo 和摩拜等共享單車的電子鎖里都有SIM模塊(類似于我們手機里裝的SIM卡),,用于和云服務器通信,。 但是 ofo 和摩拜的通信原理不一樣:
大致場景是這樣子滴 ↓ 我們(百度安全實驗室)利用一臺小型網(wǎng)絡信號嗅探設備,,截獲了車輛和云服務器之間的通信,,發(fā)現(xiàn)通信做了強加密,。 加密后,,云服務器變成了不知所云 ▼ 于是我們利用逆向工程技術(shù),分析出了加密協(xié)議的弱點,,從而解密了經(jīng)通信協(xié)議加密的數(shù)據(jù),。 (謝幺:咳咳……通俗解釋就是:他們從萬能的某寶買到了一個小黃車的電路板模塊,皮鞭滴蠟嚴刑拷打,,終于逼問出了它和服務器的接頭暗號和交流方式,。) 成功破解了通信協(xié)議之后,,我(小灰灰)立馬就想到了4種破解 ofo 單車的方法: 第一式:佯裝還車術(shù) 既然我們已經(jīng)搞懂了單車和服務器的通信協(xié)議,,那么只要模擬小黃車發(fā)出一段鎖車信號,,就能欺騙 ofo 服務器,,讓它誤以為用戶已經(jīng)還車。 接下來你只要不鎖車,,就可以隨便騎啦,! 不過這種攻擊手法還是需要花一塊錢來解鎖,不夠高級,。 第二式:密碼攔截術(shù) 我們知道,,最新的小黃車電子鎖每一次還車都會自動更換密碼。它的實現(xiàn)原理是這樣的: 每一次鎖車,,單車都向服務器發(fā)起請求,,詢問下一次密碼是多少,服務器會返回單車下一次的密碼,,比如2134,。當有用戶想解鎖該輛單車,服務器再把密碼2134通過手機APP下發(fā)給用戶。 按照這個思路,,只要我站在一個正在還車的用戶旁邊,,利用通信嗅探設備截獲這段通信數(shù)據(jù),,就能直接拿到下一次解鎖密碼。 這種方法可以不花一分錢解鎖小黃車,,但需要等別人還車才能用,,還是不夠高級。 所以我想到了第三招: 第三式:誤導小黃車大法 既然小黃車的密碼由服務器下發(fā),那我也可以偽裝成 ofo 的服務器,,給單車下發(fā)一個特定的密碼,,比如:1111,,然后用1111去解鎖車輛了,。 同樣,,我也可以把設備放在地鐵口,,不斷發(fā)出指令,就能把附近所有的小黃車密碼都變成1111,讓 ofo 公司失去對小黃車的控制權(quán)。 這還不是最絕的。 第四終極奧義:強制更新,,完全控制小黃車 小黃車的電子鎖里有一個 ROM 固件,,相當于手機的系統(tǒng),。 我們通過分析找到了一個辦法,,可以偽裝成服務器給小黃車下發(fā)一個固件版本更新,,然后把我們自己做的 ROM 固件包刷進去,這樣就能獲得電子鎖的完整控制權(quán),。(相當于給電子鎖重裝了一套系統(tǒng)) 正常情況下更新固件需要做服務端簽名校驗,,不允許隨意刷入其他非官方固件。然而,,我們發(fā)現(xiàn) ofo 存在一個 OTA 漏洞,,并沒有做校驗,所以…… 刷完固件之后,,這輛車除了印著 ofo 的 logo,,長得是黃色之外,就再也和 ofo 公司無關(guān)了,?!?它再也受 ofo 的控制了。 如果我愿意,,完全可以控制一大堆 ofo 小黃車,,把它們刷成綠色,,然后自己搭建一個服務器,寫一個APP,,然后零成本運營一家共享單車公司來,。 現(xiàn)場演講PPT ↓ (小灰灰:好吧我只是開玩笑的,不過,,不法分子確實可以利用這種手法控制大量單車鎖,,想想都可怕。) 3.不識相的問一句,,百度安全實驗室把 ofo 的鎖破解了,,不怕 ofo 會來懟你們么?(挖鼻) 小灰灰:???為什么要來懟我們?(黑人問號臉)我們是本著安全研究的目的去破解的,,幫他們發(fā)現(xiàn)了程序漏洞,,避免被黑產(chǎn)利用,薅羊毛什么的,。維護了他們的利益啊和用戶的權(quán)益啊,。 比如,最近ofo正在搞七夕集卡活動,,集齊卡片可以換77元錢,如果黑產(chǎn)利用這個漏洞去大量集卡,,就可能給 ofo 帶來巨額的緊急損失,,并且干擾正常的活動秩序,讓用戶無法正常參與,。 后期我們(百度安全)也會積極配合廠商修復漏洞,,希望通過百度的安全能力為更多智能設備廠商解決安全問題。 謝幺:那看樣子我想錯了,,他們不僅不懟你,,還應該來感謝你們了…… 4.其他品牌的鎖存在類似的安全問題嗎? 不光是共享單車,,很多物流,、家居等其他領域也有使用類似的智能鎖,我們研究了市面上很多智能鎖,,發(fā)現(xiàn)這類隱患是廣泛存在的,, 現(xiàn)場PPT展示的大量同類型車鎖 ↓ 雖然我們破解了 ofo 的電子鎖,但發(fā)現(xiàn)其實 ofo 的車鎖在安全防護上做得已經(jīng)是同類產(chǎn)品中比較好的了,。 市面上部分品牌車鎖,,甚至沒有對服務端通訊做加密,直接使用信號嗅探裝置就能獲得車鎖和服務器的通訊內(nèi)容,。 甚至,,在和一些鎖廠的交流中,我們發(fā)現(xiàn)不少鎖廠的工作人員對的網(wǎng)絡安全意識相對缺乏,,他們并不太相信有人能截獲并解開通信流量,。 所以這次破解展示也算是輕敲一下網(wǎng)絡安全的警鐘吧,未來智能鎖的應用會越來越普及,,也希望鎖在智能化的同時,,網(wǎng)絡安全性也能跟上。 謝幺:期待看到你們的下一次破解,。 謝謝~ 好的本次勾搭到此結(jié)束,,大家還有什么問題,請在留言區(qū)繼續(xù)…… - 本期完 - |
|