0
本文作者: 程弢 | 2017-02-25 19:01 | 專題:雷峰網(wǎng)公開(kāi)課 |
雷鋒網(wǎng)按:在周一(指紋傳感器和假指紋攻防技術(shù))和周三(指紋識(shí)別原理和萬(wàn)能指紋攻擊猜想)的兩期雷鋒網(wǎng)公開(kāi)課上,邁瑞微電子創(chuàng)始人李揚(yáng)淵分別從指紋識(shí)別本身的角度分析了指紋識(shí)別的安全,而本期公開(kāi)課他將從移動(dòng)支付安全整體的角度來(lái)看待指紋識(shí)別。
在前兩場(chǎng)課程中,李揚(yáng)淵提到了指紋識(shí)別的幾種攻擊方式,其中之一就是攻擊數(shù)據(jù)庫(kù),盜取指紋信息來(lái)制作假指紋。在指紋識(shí)別已經(jīng)成為了移動(dòng)支付技術(shù)入口的時(shí)代,保護(hù)指紋信息安全的重要性不言而喻。
那么在移動(dòng)支付的安全話題上,我們應(yīng)該了解哪些問(wèn)題?Android手機(jī)和蘋果手機(jī)在安全策略上有何差異?雷鋒網(wǎng)再次邀請(qǐng)了李揚(yáng)淵為你繼續(xù)解答。
李揚(yáng)淵,蘇州邁瑞微電子創(chuàng)始人;指紋識(shí)別領(lǐng)域唯一貫通算法、傳感器、IC設(shè)計(jì)的從業(yè)者;密碼芯片領(lǐng)域最早的開(kāi)發(fā)者之一;基于李揚(yáng)淵所發(fā)明的“C-Q-T”電路,僅成立3周年的蘇州邁瑞微電子已成為中國(guó)大陸電容式指紋傳感器出貨量第二名的供應(yīng)商。
我們所看到的銀行柜臺(tái)和ATM機(jī)的網(wǎng)絡(luò)連接模式都是物理隔離網(wǎng)絡(luò),也就是銀行的專用網(wǎng)絡(luò)。
物理隔離是最直接的安全防護(hù),它杜絕了監(jiān)聽(tīng)、中間人等基礎(chǔ)攻擊手段,幾乎不需要建立安全技術(shù)。常見(jiàn)報(bào)道的某地區(qū)或某軍區(qū)建立的安全網(wǎng)絡(luò),大多都是指物理隔離網(wǎng)。
但是這種網(wǎng)絡(luò)的缺點(diǎn)也很明顯,它的終端會(huì)受限,僅能在固定的柜臺(tái)和ATM機(jī)辦理業(yè)務(wù),而且其攻擊方式也主要是內(nèi)部人業(yè)務(wù)級(jí)的攻擊,或者說(shuō)是銀行雇員監(jiān)守自盜,例如行長(zhǎng)挪用,柜員盜竊客戶帳戶,以及ATM機(jī)維護(hù)人員搬走現(xiàn)金。
這在POS機(jī)進(jìn)入了各個(gè)商戶后,POS機(jī)對(duì)銀行來(lái)說(shuō)是一種第三方網(wǎng)絡(luò),但考慮到是電信運(yùn)營(yíng)商的網(wǎng)絡(luò)還算可靠。
傳統(tǒng)的POS機(jī)以電話交換網(wǎng)絡(luò)連接入銀行主網(wǎng),也就是傳統(tǒng)物理電話交換網(wǎng)絡(luò),在雙方之間建立唯一的物理通道,這是人工切換,隔絕了中間人的攻擊,但對(duì)監(jiān)聽(tīng)難以防御。在這之后,還出現(xiàn)了自動(dòng)切換以及軟件切換,軟件分組交換網(wǎng)絡(luò)可能因軟件系統(tǒng)漏洞,導(dǎo)致中間人攻擊和監(jiān)聽(tīng)。
再來(lái)看看POS機(jī)。早期申領(lǐng)POS機(jī)的商戶都要被嚴(yán)格的審核,而且POS機(jī)和人一樣有個(gè)一一對(duì)應(yīng)的身份,不過(guò)我們近幾年看到推銷的各種POS機(jī)都沒(méi)有沒(méi)有獨(dú)有的身份。
嚴(yán)格來(lái)講,作為終端,POS機(jī)配還是備了一定安全手段的:
POS的領(lǐng)取受到管控,POS使用者和唯一序列碼綁定;
POS在技術(shù)手段上實(shí)施了一定程度的加密;
POS畢竟是安全設(shè)備,提前內(nèi)置密鑰,無(wú)須分發(fā),沒(méi)有分發(fā)環(huán)節(jié)風(fēng)險(xiǎn);
當(dāng)然,這不代表POS機(jī)就不存在安全風(fēng)險(xiǎn),比較常見(jiàn)的攻擊方式就是刷卡套現(xiàn),屬于業(yè)務(wù)級(jí)而不是技術(shù)級(jí)的攻擊。
互聯(lián)網(wǎng)引入金融系統(tǒng),就意味著要在不安全的網(wǎng)絡(luò)之上建立一個(gè)安全的體系,最基本的要求就是終端要有保障。我們看到這類最早的產(chǎn)品是U盾,現(xiàn)在U盾已經(jīng)從第一代發(fā)展到了第三代(支持指紋識(shí)別功能),在這過(guò)程中U盾的成本增加了,但交易風(fēng)險(xiǎn)在降低。
那么,網(wǎng)上銀行終端以互聯(lián)網(wǎng)接入銀行主網(wǎng)存在哪些風(fēng)險(xiǎn)呢?
最致命的就是互聯(lián)網(wǎng)是不安全的網(wǎng)絡(luò):分組轉(zhuǎn)發(fā)傳輸方式?jīng)Q定了物理信道不確定性;數(shù)據(jù)層面,監(jiān)聽(tīng)、篡改、阻塞、中間人攻擊五花八門;軟件系統(tǒng)層面,病毒、木馬、遠(yuǎn)程控制層出不窮。
針對(duì)這些問(wèn)題,可以基于數(shù)字證書(shū)和安全模塊來(lái)增強(qiáng)終端的安全:
數(shù)字證書(shū)體系由非對(duì)稱密碼、對(duì)稱密碼、安全協(xié)議構(gòu)成;
安全模塊具備設(shè)備唯一碼、安全儲(chǔ)存器、安全計(jì)算環(huán)境,等等;
攻擊方式:
為抵抗偽造交易,所以U盾從1代發(fā)展到2代,增加了現(xiàn)實(shí)和確認(rèn)物理按鍵;
為抵抗竊取U盾,第3代U盾引入指紋識(shí)別;
銀行卡受限于成本只相當(dāng)于1代U盾。
移動(dòng)互聯(lián)網(wǎng)的支付風(fēng)險(xiǎn)比互聯(lián)網(wǎng)要大,因?yàn)楣羰侄卧黾恿?,從技術(shù)角度上講,終端的接入入口是變化的,從法律管控來(lái)看,終端的身份認(rèn)定更加困難,所以說(shuō)移動(dòng)互聯(lián)網(wǎng)比固定互聯(lián)網(wǎng)更加不安全:
假基站攻擊、復(fù)制sim卡等新攻擊手段;
設(shè)備不易追蹤,犯罪風(fēng)險(xiǎn)更小。
因此,在網(wǎng)絡(luò)變?nèi)醯那闆r下,對(duì)移動(dòng)設(shè)備終端安全也提出了更高的挑戰(zhàn):
移動(dòng)設(shè)備仍然是開(kāi)放的軟件平臺(tái);
安全鏈涉及的環(huán)節(jié)和廠商更多;
沒(méi)有成形標(biāo)準(zhǔn),很難協(xié)同一致。
一言以蔽之,移動(dòng)支付遍地漏洞,攻擊方式非常多樣化,主要防御手段就是大數(shù)據(jù)統(tǒng)計(jì)風(fēng)控,以支付寶為例,他們?cè)缙诘陌l(fā)展主要原因之一就是敢賠,中國(guó)的移動(dòng)支付能走在世界前列靠的就是統(tǒng)計(jì)風(fēng)控,這間接打了技術(shù)安全的臉。
一般情況下,網(wǎng)絡(luò)越開(kāi)放,終端安全技術(shù)要求越高,所以標(biāo)準(zhǔn)化不如PC的手機(jī),所面臨的安全風(fēng)險(xiǎn)也會(huì)更高。
一是硬件漏洞和硬件驅(qū)動(dòng)程序作惡防不慎防,舉個(gè)例子,去年我們一競(jìng)爭(zhēng)對(duì)手用驅(qū)動(dòng)程序檢測(cè)內(nèi)置的芯片,而他們就在此做了些動(dòng)作,當(dāng)檢測(cè)到不是他們自己的芯片時(shí),就會(huì)影響用戶手機(jī)的運(yùn)行速度甚至導(dǎo)致死機(jī)。硬件驅(qū)動(dòng)程序在系統(tǒng)的權(quán)限級(jí)很高,而手機(jī)生態(tài)對(duì)硬件驅(qū)動(dòng)程序沒(méi)有做很全面的代碼審核,尤其是指紋識(shí)別。
另外,手機(jī)操作系統(tǒng)尤其是碎片化的Android面臨的安全風(fēng)險(xiǎn)很高,例如舊版本維護(hù)問(wèn)題,安全補(bǔ)丁及時(shí)性問(wèn)題。
除此之外,惡意軟件管控面臨巨大挑戰(zhàn),軟件分發(fā)缺少安全標(biāo)準(zhǔn)和執(zhí)行,防御性軟件式微,手機(jī)平臺(tái)不具備PC平臺(tái)那樣成熟的安全軟件行業(yè)。
所以,移動(dòng)支付面臨的問(wèn)題是網(wǎng)絡(luò)安全以及技術(shù)安全的實(shí)施條件都變差了,支付平臺(tái)必須付出很高的代價(jià)來(lái)完善統(tǒng)計(jì)風(fēng)險(xiǎn)控制,但需要注意的是,統(tǒng)計(jì)風(fēng)控也存在一定的局限性,例如用虛假交易來(lái)擾亂金融,這是統(tǒng)計(jì)風(fēng)控?zé)o法避免的。
SE是一個(gè)符合金融標(biāo)準(zhǔn)的芯片、軟件系統(tǒng)標(biāo)準(zhǔn)技術(shù),以U盾芯片和CPU銀行卡芯片為例,SE代表了金融信息安全的一系列標(biāo)準(zhǔn)技術(shù),它有以下技術(shù)特征:
封閉的軟件環(huán)境;
與金融信息化系統(tǒng)的兼容性接口;
具備內(nèi)存保護(hù)的安全動(dòng)態(tài)儲(chǔ)存器;
防靜態(tài)破解的安全靜態(tài)儲(chǔ)存器;
密碼加速硬核;
真隨機(jī)數(shù)發(fā)生器;
防動(dòng)態(tài)功耗分析的機(jī)制,等等。
對(duì)以移動(dòng)支付為代表的移動(dòng)互聯(lián)網(wǎng)金融而言,SE的作用是銜接終端安全體系和金融安全體系。
蘋果就是以標(biāo)準(zhǔn)SE作為兩套體系的接口,還兼顧了部分服務(wù)端的架設(shè)工作,這使蘋果公司向金融業(yè)的接入方式更靈活更有兼容性;而Android陣營(yíng)則為SE的價(jià)值爭(zhēng)論不休,并沒(méi)有什么作為,仿佛做夢(mèng)由金融系統(tǒng)主動(dòng)改變技術(shù)標(biāo)準(zhǔn)來(lái)適應(yīng)自己。
答案是否定的,央行正在大幅度地提高監(jiān)管力度,以前松技術(shù)監(jiān)管的好日子是給互聯(lián)網(wǎng)金融試水成長(zhǎng)的;技術(shù)監(jiān)管趨嚴(yán),互聯(lián)網(wǎng)金融已經(jīng)面臨與銀行業(yè)一致的監(jiān)管標(biāo)準(zhǔn)和安全要求,隨時(shí)間推進(jìn)會(huì)整體性越來(lái)越嚴(yán)格;不安全無(wú)金融,金融就是以可控的風(fēng)險(xiǎn)進(jìn)行資金的流動(dòng);安全技術(shù)攻防中,互聯(lián)網(wǎng)金融平臺(tái)取代傳統(tǒng)金融業(yè)成為防守方的主力,這本身也是整個(gè)金融業(yè)的進(jìn)步。
蘋果的安全架構(gòu)有三個(gè)部分:Open OS、Secure Enclave和SE,這是Apple終端安全的三大件,一個(gè)都不能少:
Open OS(IOS)用于運(yùn)行軟件,作為兼容性平臺(tái)先天弱安全,即使IOS也不停暴露致命漏洞;
Secure Enclave用于運(yùn)行安全軟件,擁有獨(dú)立的片上安全SRAM,不安裝第三方軟件,是一個(gè)封閉系統(tǒng);
SE作為與金融信息安全系統(tǒng)的標(biāo)準(zhǔn)接口,同時(shí)提供安全儲(chǔ)存功能,為前兩者提供密鑰儲(chǔ)存等服務(wù);
總結(jié)來(lái)說(shuō),Apple設(shè)計(jì)理念是硬件隔離風(fēng)格,這是可證的安全。
Android沒(méi)有SE,這使得金融體系要接入的時(shí)候安全性不高,它主要的兩個(gè)組成部分是Open Zone和Secure Zone,但二者的關(guān)系設(shè)計(jì)不合理:
Open Zone(Android)往往不具備獨(dú)立的Secure Boot Chain,而由運(yùn)行于Secure Zone的Secure OS引導(dǎo);
Secure Zone雖然和Secure Enclave都遵從ARM的Trust Zone標(biāo)準(zhǔn),但配置不一樣:Android陣營(yíng)使Secure Zone與Android復(fù)用DRAM,等于對(duì)內(nèi)存補(bǔ)丁攻擊不設(shè)防,一旦關(guān)鍵數(shù)據(jù)地址暴露,則可以被Android運(yùn)行的軟件鎖定變量值;部分Android陣營(yíng)廠商設(shè)置的開(kāi)發(fā)規(guī)則使Android App成為Secure App的精細(xì)調(diào)用者,對(duì)調(diào)度者攻擊不設(shè)防,可以誤導(dǎo)操作組合實(shí)現(xiàn)業(yè)務(wù)層攻擊。
所以Android陣營(yíng)的設(shè)計(jì)理念是軟件防御式的擾亂,而不是硬件隔離,它的安全不可證。
金融業(yè)玩的就是量化風(fēng)險(xiǎn),風(fēng)險(xiǎn)越高保險(xiǎn)費(fèi)越高,消費(fèi)者付出的手續(xù)費(fèi)就越高。
對(duì)于安全可證的Apple平臺(tái),給予符合其可證安全等級(jí)的低費(fèi)率。蘋果在低費(fèi)率上再加一點(diǎn)點(diǎn)抽水,還能使總費(fèi)率低于平均水平;
對(duì)于安全不可證的Android平臺(tái),基本費(fèi)率以可能的最低安全等級(jí)為準(zhǔn)。正因?yàn)锳ndroid手機(jī)支付的高費(fèi)率,Apple Pay才能在盈利的同時(shí)擁有費(fèi)率競(jìng)爭(zhēng)力。也正是因?yàn)檫@種安全機(jī)制的差異,造成了現(xiàn)在Apple Pay和Android賠的局面。
Trust Zone是ARM提出的標(biāo)準(zhǔn),這個(gè)標(biāo)準(zhǔn)強(qiáng)調(diào)的是隔離軟件和硬件,但具體把安全做到哪一步依賴于完整的Soc設(shè)計(jì)甚至整機(jī)設(shè)計(jì)。
Apple的Secure Enclave和Android的Secure Zone都基于ARM的Trust Zone。Secure Enclave的storage(靜態(tài)存儲(chǔ)器)、dynamic memory(內(nèi)存)、boot chain都是獨(dú)立的,且不安裝第三方應(yīng)用;
Secure Zone的storage、dynamic memory與Android是復(fù)用的,靠AP的寄存器配置來(lái)分離,一旦Android App獲得改寫(xiě)權(quán)限,那么就只有指望攻擊者不知道該怎么辦了。
Apple的指紋子系統(tǒng)有3個(gè)角色:一是傳感器,主要任務(wù)是采集指紋數(shù)據(jù);第二個(gè)是加密芯片,將指紋數(shù)據(jù)加密傳輸?shù)紸P;第三個(gè)是Secure Enclave,與加密芯片在出廠前匹配密鑰,指紋圖像明文只有在Secure Enclave里才被解密,且由于Secure Enclave使用的SRAM在片內(nèi),數(shù)據(jù)不可取出,掉電即失,蘋果拿不到指紋數(shù)據(jù)是由硬件隔離保證的。
Android的指紋系統(tǒng)有2個(gè)角色:一是傳感器,主要是采集指紋數(shù)據(jù),明文傳輸給AP;二是Secure Zone,獲得指紋數(shù)據(jù)明文,并儲(chǔ)存在共享DRAM里,并對(duì)其進(jìn)行運(yùn)算。
但是有個(gè)問(wèn)題,指紋數(shù)據(jù)傳輸給Secure Zone還是Open Zone,是由寄存器設(shè)置決定的,一旦寄存器被改指紋信息也就被盜取了,這是軟隔斷思路的局限性。
一方面是因?yàn)镾E本身有成本,另一方面是Android引入了也沒(méi)什么用:
SE只是一個(gè)保險(xiǎn)箱,確保保險(xiǎn)箱里的東西不被盜竊。這么一個(gè)赤身裸體的Android體系作為SE的調(diào)度者時(shí),即使保險(xiǎn)箱永遠(yuǎn)不打開(kāi),手機(jī)永遠(yuǎn)不丟失,Hacker遠(yuǎn)程控制你的手機(jī)根本不在話下。
前面比較了蘋果和Android的安全,蘋果把Secure Enclave作為一個(gè)絕對(duì)獨(dú)立的東西,Android則做不到。作為開(kāi)放性兼容體系,Android陣營(yíng)在安全上天然不利。
Secure Zone需要安裝第三方軟件,決定了Secure Zone的安全性是有限的;Secure Zone需要富資源,尤其是存儲(chǔ)器資源,導(dǎo)致成本上無(wú)法像蘋果一樣接受片上專用的SRAM。
硬件不行軟件上,Secure Zone對(duì)Secure OS要求極高,導(dǎo)致對(duì)Secure OS的限制也就極大。再把Secure Zone作為安全根顯然是不可行的。
Secure Element除了作為金融安全標(biāo)準(zhǔn)件外,還可以為終端提供安全根和安全儲(chǔ)存服務(wù):
SE需要自主運(yùn)行,免受調(diào)度者攻擊;作為Secure boot chain的第一環(huán)節(jié),由SE來(lái)校驗(yàn)Secure Zone,Secure Zone再來(lái)校驗(yàn)Open Zone,將SE集成于AP的設(shè)計(jì)需要充分考慮到這一需求;
SE提供密鑰安全儲(chǔ)存服務(wù),當(dāng)Secure Zone被攻破的時(shí)候,數(shù)據(jù)還存在SE里。充分活用SoC和SiP技術(shù),杜絕該安全儲(chǔ)存服務(wù)本身受到鏈路攻擊;
把指紋識(shí)別的運(yùn)算從Secure Zone轉(zhuǎn)移到SE,使指紋識(shí)別得以輔助SE成為最后一道關(guān)卡,這就構(gòu)成了下面這個(gè)架構(gòu)圖。
這是基于FSE的安全架構(gòu),它以Secure Element作為安全中心節(jié)點(diǎn):SE左側(cè)為指紋和金融體系,AP關(guān)閉時(shí)可以獨(dú)立支付;SE右側(cè)逐次連接Secure Zone和Open Zone,從左到右實(shí)現(xiàn)Trust Boot Chain等安全機(jī)制。
這一體系的價(jià)值在于可以降低支付的手續(xù)費(fèi),而且還提高了手機(jī)的業(yè)務(wù)級(jí)安全能力。
Q:指紋識(shí)別方案現(xiàn)在有沒(méi)有和支付平臺(tái)和系統(tǒng)廠商協(xié)作?以及怎么承擔(dān)風(fēng)險(xiǎn)?
A:指紋方案現(xiàn)在只是兼容性接入,沒(méi)有量化,沒(méi)有風(fēng)險(xiǎn)評(píng)估。不止指紋,安全操作系統(tǒng)提供方也以軟件授權(quán),而非安全服務(wù)的形式存在。風(fēng)險(xiǎn)只在系統(tǒng)集成那里,畢竟安全鏈沒(méi)有閉合,安全沒(méi)量化,一旦出錯(cuò),怎么分責(zé)任呢?而安全領(lǐng)域的做法是,安全商集體為最終客戶背鍋。手機(jī)還沒(méi)有達(dá)到信息安全標(biāo)準(zhǔn),目前只有信息安全噱頭
Q:Secure Enclave和ARM的TrustZone區(qū)別在哪?
A:Secure enclave是基于trust zone標(biāo)準(zhǔn)做了配置和再開(kāi)發(fā)的成果,至于蘋果干了什么,并沒(méi)有通知ARM。事實(shí)是,ARM靠蘋果用了trust zone給自己打廣告,并且把蘋果沒(méi)有使用ARM參考方案給忽略了。
我需要強(qiáng)調(diào)一個(gè)觀念,產(chǎn)業(yè)級(jí)企業(yè),一家的力量,可以比平行產(chǎn)業(yè)整體的力量大很多,中國(guó)有企業(yè),缺完整產(chǎn)業(yè),更加沒(méi)有產(chǎn)業(yè)級(jí)企業(yè),華為肯定走在最前面,但路還長(zhǎng)。
Q:前不久看到印度推出的指紋支付計(jì)劃,就是指紋支付系統(tǒng)和印度的“生物識(shí)別數(shù)據(jù)庫(kù)”連接,這種安全性是好是壞?我只要保護(hù)一個(gè)數(shù)據(jù)庫(kù)就可以防住所有人的信息泄露...
A:我只要攻破一個(gè)數(shù)據(jù)庫(kù)就拿到所有的數(shù)據(jù),攻防相長(zhǎng),一切是動(dòng)態(tài)的。雞蛋放在一個(gè)籃子里,不是安全領(lǐng)域人員可以接受的想法。像蘋果一樣,用機(jī)制確保指紋數(shù)據(jù)拿不出來(lái)才是王道,我給出的以SE為中心的架構(gòu)建議就遵循這個(gè)思路。安全技術(shù)在于提升天然等級(jí)達(dá)到需要的等級(jí),如果天然等級(jí)足夠高,就不必?fù)?dān)心技術(shù)的發(fā)展使得未來(lái)得以破解,安全產(chǎn)品的生存期也就提高了,同一維度的攻防,只有殺毒軟件才喜歡,升級(jí)越頻繁,收費(fèi)越自然。從架構(gòu)設(shè)計(jì)來(lái)看,不到迫不得已,就不要指望同一維度的防守,盡量比攻擊者高一個(gè)等級(jí)。
本期公開(kāi)課視頻如下:
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見(jiàn)轉(zhuǎn)載須知。