小米短信云同步安全缺陷是誰的責(zé)任
短信驗證碼缺陷背后是一個很長很長的鏈條,此文僅是趁著小米短信驗證碼事件進行初步解析,并非針對小米一家,恰恰在這件事中,槍口僅僅對著小米也是不公平的。
之前發(fā)生了因為疑似攻擊者通過小米短信云同步功能竊取銀行驗證短信,從而盜取十萬元現(xiàn)金的事件關(guān)于背后的責(zé)任問題,來仔細(xì)分析下。
“雙因素認(rèn)證”
我們知道,信息安全領(lǐng)域有一個原則,就是“不要把雞蛋放在一個籃子里”,所以一般來說,類似網(wǎng)銀轉(zhuǎn)賬這樣的高安全性要求的操作,應(yīng)該執(zhí)行雙因素認(rèn)證。
雙因素認(rèn)證:早期的用戶認(rèn)證方式往往只采用賬號和密碼,默認(rèn)持有賬號密碼的就是用戶本人,如果用戶的賬號密碼丟失了,那么整個賬號的控制權(quán)都會丟失。
隨著信息化越來越普及,出現(xiàn)了針對賬號密碼的各種攻擊手段,包括:木馬后門、網(wǎng)絡(luò)竊聽、暴力破解、拖庫撞庫等等。單一地通過賬號密碼來驗證用戶身份的方式已經(jīng)不能很好地保護用戶賬號的安全性。
因此,大多數(shù)重要的系統(tǒng),都引入了雙因素認(rèn)證,也就是除了賬號密碼外,還需要通過其他的認(rèn)證方式再次驗證用戶身份,從而確保即使用戶密碼丟失,也不會遭到巨大損失。
雙因素認(rèn)證的方式很多,從早期的動態(tài)令牌、U-key到現(xiàn)在最流行的手機驗證碼,都屬于雙因素認(rèn)證。雙因素認(rèn)證極大地提高了用戶的賬號安全性,使得竊取用戶賬號的難度比原先提高了很多。
大家會覺得很奇怪,既然網(wǎng)上銀行已經(jīng)采用了雙因素認(rèn)證,那么銀行卡被盜的事情應(yīng)該很少發(fā)生,為什么最近卻聽到不少手機銀行被盜刷的事件呢?
手機短信驗證存在缺陷
那是因為,采用手機短信驗證碼來對手機銀行進行雙因素認(rèn)證,是非常不稱職的。
我們來看一下手機銀行的支付過程:
用戶——手機銀行應(yīng)用——wifi——運營商網(wǎng)絡(luò)——銀行服務(wù)器——短信驗證碼——用戶手機
銀行卡密碼+短信驗證碼 雙因素驗證
我們知道雙因素認(rèn)證能大幅提高安全性的前提是兩個不同的認(rèn)證方式很難被同時破解。
例如電腦版的網(wǎng)上銀行,如果采用手機短信驗證,那么攻擊者需要同時拿下被害人的電腦和手機才能得逞,這比僅僅拿下電腦或者僅僅拿下手機要難了一倍以上(因為確認(rèn)電腦和手機的關(guān)聯(lián)性也是非常大的工作量)。
但是如上圖所示,對于手機銀行,情況就完全不同了,短信驗證碼在終端和通訊鏈路上,跟手機銀行都是共享的:手機銀行使用手機作為支付終端、短信也是使用手機作為接收終端,手機銀行使用運營商的鏈路作為數(shù)據(jù)通道,短信也是使用運營商的鏈路作為數(shù)據(jù)通道。這就導(dǎo)致了無論是手機終端,還是運營商通道被攻破,雙因素驗證都會同時失效,此時的雙因素驗證,完全不符合“雞蛋不要放在一個籃子里”的原則。
之前就發(fā)生過多次利用手機木馬、偽基站、釣魚Wi-Fi、運營商短信托管服務(wù)、SIM卡補卡等方式竊取用戶短信驗證碼,從而盜取銀行存款的事件。此次事件疑似通過手機的云備份服務(wù)來獲取銀行驗證短信,雖然手段不同,但是作案的思路還是相似的。
那么銀行為什么還是選用手機短信作為雙因素驗證的主要辦法呢?
一方面是因為成本,另一方面是因為易用性。
雖然我們說雙因素認(rèn)證的方式很多,從動態(tài)令牌(隨機產(chǎn)生6位密碼的小盒子)到U-Key(可以插在電腦/手機上驗證用戶身份的小盒子)都在不同的銀行有一定的應(yīng)用范圍,但是因為無論是動態(tài)令牌還是U-Key都有一定的成本(幾塊到十幾塊不等),對銀行來說難以大規(guī)模推廣。而且畢竟多了一個小盒子,攜帶起來也不方便。而手機短信可以說是既便宜也最方便的手段,不需要額外的購置成本,也無需額外的設(shè)備,因此也被廣大用戶和銀行所喜愛。
運營商、手機廠商、銀行,誰的責(zé)任?
那么短信驗證碼安全問題頻出,銀行、運營商、手機廠家、用戶,究竟是誰的責(zé)任呢?我的看法是大家都有責(zé)任,其中銀行的責(zé)任最大。
1、為什么銀行的責(zé)任最大?
因為推廣手機銀行和采用短信驗證碼來進行二次驗證,最主要的得益方是銀行。
手機銀行可以大大降低銀行的運營成本,與傳統(tǒng)的開設(shè)營業(yè)網(wǎng)點相比,電子銀行的成本幾乎可以忽略不計,而與網(wǎng)上銀行之前普遍采用動態(tài)令牌或者U-Key相比,手機銀行的成本也大為降低。
銀行要大力開展創(chuàng)新,壓縮成本,提高用戶易用性,這無口厚非。但是部分銀行在選擇手機短信作為雙因素驗證方法的時候,忽視了對其中存在的信息安全風(fēng)險進行分析和控制,手機銀行采用短信驗證碼會大幅降低雙因素認(rèn)證的強度,對此銀行采取了什么措施?在鼓勵用戶開通手機銀行的時候有沒有盡到告知和風(fēng)險提示義務(wù)?銀行有沒有積極投入資源在技術(shù)上對相應(yīng)的風(fēng)險進行控制?對因為安全性降低而失竊的用戶,有沒有進行及時的補償?
2、運營商:沒有對短信驗證存在的安全風(fēng)險有充分準(zhǔn)備
另一方面,移動運營商雖然推出了基于短信來進行密碼驗證的服務(wù)(包括且不僅限于銀行、郵箱、儲值卡等等),但是在技術(shù)手段和內(nèi)部流程上,并沒有將短信服務(wù)的信息安全要求提升到相應(yīng)的高度,例如,復(fù)制卡、偽裝身份補卡、偽基站、假冒短信、短信網(wǎng)關(guān)的安全事件層出不窮。部分運營商還提供了短信托管服務(wù),支持在網(wǎng)上遠(yuǎn)程實時查看短信。這說明移動運營商并沒有系統(tǒng)性的規(guī)劃短信身份驗證服務(wù)的信息安全,對其可能造成的風(fēng)險沒有充分的認(rèn)識和準(zhǔn)備。
3、同時,部分手機廠商,也未能充分意識到手機短信的敏感性。
有些手機支持應(yīng)用程序直接讀取短信內(nèi)容,有些手機默認(rèn)將短信備份在云服務(wù)器上,有些手機未能及時修復(fù)安全漏洞,在安全防護上出現(xiàn)了種種瑕疵。
而相當(dāng)程度的用戶則缺乏安全意識,開通手機銀行時并未仔細(xì)閱讀用戶協(xié)議,多個系統(tǒng)(例如手機銀行、郵箱、云服務(wù))使用相同的密碼。
一方的大力推動、用戶的茫然無知和三方的疏忽大意,最終導(dǎo)致了多起事件的出現(xiàn)。最終將缺乏安全意識和技能的普通用戶赤裸裸地暴露在黑色產(chǎn)業(yè)鏈的目光之下。
而從后果上來看,此類事情的出現(xiàn)并不僅僅是普通用戶的災(zāi)難,也將是整個產(chǎn)業(yè)的災(zāi)難,試想,如果移動支付/金融的安全性得不到保障,還有誰敢繼續(xù)使用呢?大家應(yīng)該共同來提高移動金融的安全水平,這樣才能保障產(chǎn)業(yè)的健康發(fā)展。
幾點建議
從銀行角度,應(yīng)該平衡業(yè)務(wù)發(fā)展、易用性和風(fēng)險,采取一定的風(fēng)險控制措施。
事先對開通手機銀行的用戶進行風(fēng)險提示,加強用戶的信息安全意識教育,通過應(yīng)用檢測和加固提高手機銀行應(yīng)用的安全水平。
事中控制手機短信驗證的轉(zhuǎn)賬上限,對手機銀行大額轉(zhuǎn)賬進行額外的風(fēng)險控制。
事后積極追查打擊針對電子銀行的違法犯罪行為,對被害用戶進行及時的賠償。
從運營商角度,要充分認(rèn)識到短信目前已經(jīng)不再僅僅是聊天工具而經(jīng)常性地被應(yīng)用于身份認(rèn)證的場合,因此要在用戶賬號、SIM卡管理、通訊鏈路、相關(guān)增值業(yè)務(wù)等方面全面地提高短信驗證碼的安全性。
從手機廠商角度,應(yīng)該充分尊重用戶的隱私和安全性,不要為了發(fā)展云服務(wù),就把用戶隱私甚至敏感數(shù)據(jù)存放在云端,默認(rèn)配置應(yīng)該不對敏感信息進行云存儲,同時也要強化用戶賬號管理和高危操作的二次驗證。
對普通用戶來說,要提高安全意識——
不在手機上隨便下載不信任的應(yīng)用;
不使用不安全的Wi-Fi;
不要使用簡單密碼或多個賬號使用同樣的密碼;
如果有可能,手機銀行和短信驗證使用兩臺不同的手機;
開通了手機支付轉(zhuǎn)賬的銀行卡內(nèi)不要存放太多現(xiàn)金。
2898站長資源平臺網(wǎng)址導(dǎo)航網(wǎng)站排行榜:http://afrimangol.com/webmain/wzdh.htm