晦暗的色調(diào)中有一口井,畫面閃動(dòng),井旁突然出現(xiàn)了一名長(zhǎng)發(fā)女子。
“啪”,上班族翠花慌忙關(guān)掉電視,今晚男朋友有應(yīng)酬,獨(dú)居一人的她實(shí)在沒(méi)有膽量繼續(xù)把這恐怖片看下去。后背的一層白毛汗早已打濕了衣服,然而翠花卻澡也不敢洗,逃難似的鉆進(jìn)被窩把自己攢成一團(tuán)。殊不知,屋外剛換的智能防盜門卻伴隨著夜色靜悄悄地打開(kāi)了……
放在床頭的手機(jī)收到一條“門開(kāi)了”的信息,不久屋內(nèi)便進(jìn)來(lái)一個(gè)晃晃悠悠地人形黑影,翠花猛然從床上跳起來(lái),汗毛根根直立……
可是生活有時(shí)候像白水煮出來(lái)的面條,能填飽肚子卻缺乏刺激,平淡又無(wú)味,原來(lái)是她應(yīng)酬晚歸的男朋友回來(lái)了。男朋友喝了酒,醉醺醺倒頭就睡。智能電子門鎖沒(méi)有把男朋友鎖在門外,證明他沒(méi)喝到不省人事,起碼記得密碼。
也許生活就此歸于平常,但翠花不知道的是,能進(jìn)門的不止有知道門鎖密碼的男朋友,也可以是在賽博世界中稱雄的黑客。
智能防盜門以其方便智能的特點(diǎn)迅速虜獲了一大批追求生活品質(zhì)的客戶:不用配鑰匙,輸入密碼即可進(jìn)入家門;親戚朋友來(lái)拜訪,只需手機(jī)發(fā)送虛擬鑰匙就可省去交接鑰匙的煩惱;大門被暴力破壞,手機(jī)App會(huì)給戶主發(fā)提醒消息……
如此便利且科技感十足的產(chǎn)品走俏并不是偶然,而對(duì)于萬(wàn)物大門皆洞開(kāi)的黑客來(lái)說(shuō),黑掉一個(gè)區(qū)區(qū)電子鎖并沒(méi)有想象中的那么難。
想破解一把鎖,首先得搞清楚開(kāi)鎖的原理。
對(duì)于傳統(tǒng)的機(jī)械鎖,鑰匙上的每一個(gè)“凹槽”都對(duì)應(yīng)著鑰匙孔里彈子的固定位置,當(dāng)鑰匙插入鑰匙孔,就會(huì)把彈子頂?shù)焦潭ǖ奈恢?,這時(shí)擰動(dòng)鑰匙就可以開(kāi)鎖。
看圖就知道并不是很難破解。
▲ 老派開(kāi)鎖“手藝人”必備技能
然而更奇葩的攻擊思路是繞過(guò)鎖本身直指最終目標(biāo)。
▲ 畫風(fēng)清奇,守奇出正
那么對(duì)于融合了電子設(shè)備、甚至可以直接用手機(jī)app操縱的智能門鎖呢?
要知道國(guó)內(nèi)做智能門鎖的很多廠家是從做普通鎖轉(zhuǎn)型到智能門鎖行業(yè)的,物聯(lián)網(wǎng)安全也許并不能在他們心中占據(jù)重要地位。畢竟這是一個(gè)封閉環(huán)境,不像電腦、筆記本等插網(wǎng)線即可聯(lián)網(wǎng)的設(shè)備。所以防護(hù)也好,加密也罷,都還停留在能用就好的標(biāo)準(zhǔn)。
自我欺騙的結(jié)果是產(chǎn)生漏洞,漏洞給了入侵者可乘之機(jī)。啟明星辰積極防御實(shí)驗(yàn)室安全專家"大菠蘿"將破解智能門鎖的奧秘告訴了雷鋒網(wǎng)宅客頻道。
“大菠蘿”表示,
我們測(cè)試的那把門鎖可以連家里的Wi-Fi,通過(guò)家里的無(wú)線路由器來(lái)控制門鎖,我會(huì)介紹兩種情況,一種是知道Wi-Fi密碼的情況下把這把鎖破解掉,另外一種就是不知道Wi-fi密碼的情況下直接破解這把鎖。
1.知道Wi-Fi密碼的情況下
據(jù)“大菠蘿”分析,他們測(cè)試的智能電子鎖所有指令一共是用64個(gè)字節(jié)來(lái)完成的(并非所有的智能門鎖都是64字節(jié))。包括設(shè)備的匹配、綁定、開(kāi)鎖、鎖門等等……因此他將這64個(gè)字節(jié)比作64“圣旨”,相當(dāng)于智能鎖的命門所在。同時(shí)他還發(fā)現(xiàn),經(jīng)過(guò)幾把鎖和路由間通訊的檢查,64個(gè)字節(jié)里面的62個(gè)字節(jié),針對(duì)這個(gè)廠家這個(gè)型號(hào)的所有鎖都是起作用的。
另外,這把鎖本身不會(huì)驗(yàn)證64個(gè)字節(jié)的來(lái)源,也不會(huì)驗(yàn)證它是否可信,是否準(zhǔn)確,只會(huì)無(wú)條件執(zhí)行。
簡(jiǎn)直就像初涉江湖的單純馬仔,大哥叫他往東絕不往西,堅(jiān)決不會(huì)思考他老大是不是個(gè)路癡。
▲ 大哥,你說(shuō)砍誰(shuí)就砍誰(shuí)
鎖與路由器之間的通訊協(xié)議為UDP協(xié)議,這種協(xié)議的特性是源可以偽造,且可以任意廣播,為入侵者的工作提供了極大便利。
大菠蘿的做法是將與智能鎖相配的App逆向出來(lái),發(fā)現(xiàn)了這個(gè)程序的代碼中硬編碼了該廠家智能鎖的密碼6*****1,不僅是個(gè)弱密碼,還沒(méi)有做加固,所以逆向出這個(gè)程序后可以清晰的看到整個(gè)代碼邏輯。
他表示一共檢測(cè)了5把電子門鎖,可以說(shuō)有四把電子門鎖的密碼都寫死在代碼中。
后面的工作就不難了,因?yàn)橹罒o(wú)線密碼,可以用手機(jī)連到住戶的Wi-Fi,又因?yàn)樗耐ㄓ崊f(xié)議為UDP,可以是廣播的方式,所以當(dāng)鎖受到Find指令時(shí),會(huì)把自己的序列號(hào)SN(如同每輛汽車都有屬于自己的車架號(hào)一樣,智能鎖也有專屬的設(shè)備序列號(hào)。)告訴App,同時(shí)知道鎖的密碼是6*****1,發(fā)送數(shù)據(jù)包,把狀態(tài)改成Open開(kāi)鎖就成功了。
他們還試過(guò)以廣播方式獲得桌上6把鎖的SN,然后配合硬編碼逐一打開(kāi),證實(shí)了門鎖本身并不會(huì)考慮來(lái)源是否可信這一殘酷的事實(shí)。
▲ 無(wú)敵是多么寂寞
2.不知道Wi-Fi密碼的情況下
前面說(shuō)到了門鎖的序列號(hào),它的作用是當(dāng)戶主忘帶鑰匙時(shí),廠家應(yīng)急處理可以通過(guò)序列號(hào)開(kāi)鎖。因此序列號(hào)被直接寫在了鎖的面板上面,只需在門外打開(kāi)智能鎖的蓋子就可以看到。
所以從理論上講,任何人都可以看到序列號(hào),需要做的只是找個(gè)工具把門鎖的面板打開(kāi),鎖的身份信息便一覽無(wú)余。這里只需要下載門鎖的序列號(hào)SN,硬編碼是6*****1,發(fā)送指令包,鎖就可以打開(kāi)。
大菠蘿表示,
最恐怖的是鎖的SN序列號(hào)有規(guī)律性,6把鎖里面,有3把鎖是連號(hào)的,我們可以看到這4位數(shù)在變。無(wú)論在哪兒,我下載完這個(gè)App,把數(shù)字從頭到尾排一遍,是不是家家戶戶的門都開(kāi)了。服務(wù)器會(huì)覺(jué)得你好有錢,各地都有房產(chǎn),都能開(kāi)門。
雷鋒網(wǎng)宅客頻道歸納總結(jié)一下,這把鎖沒(méi)有綁定手機(jī)端;設(shè)備號(hào)可預(yù)測(cè);App本身未加固;云沒(méi)有做嘗試次數(shù)的阻斷……這些致命漏洞也許都是由于廠家的安全意識(shí)淡薄導(dǎo)致。
然而樹(shù)欲靜而風(fēng)不止,在入侵者眼中,漏洞是拿來(lái)利用的,而不是用來(lái)忽視的。也應(yīng)了一位資深開(kāi)鎖老師傅的人生感悟——任何防盜門只防君子,沒(méi)有開(kāi)不了的鎖,手藝人只在乎值不值。
---
聽(tīng)著男朋友的鼾聲,翠花心滿意足的踏實(shí)睡去。屋外夜色正濃,本應(yīng)是鎖好的防盜門安靜的像幅畫。突然,門把手緩緩轉(zhuǎn)動(dòng),門悄悄的開(kāi)了一條縫……
(審核編輯: 林靜)
分享