銀行APP高危漏洞能讓你一夜回到解放前
近年,移動(dòng)支付發(fā)展迅猛,各家金融機(jī)構(gòu)也伴隨著移動(dòng)互聯(lián)網(wǎng)發(fā)展大潮紛紛推出了各自的金融客戶端應(yīng)用程序(這里主要指手機(jī)銀行客戶端應(yīng)用程序,以下簡(jiǎn)稱“手機(jī)銀行APP”),由此,移動(dòng)金融支付的安全問(wèn)題也不斷爆發(fā):釣魚(yú)詐騙、信息泄露、資金盜取等。中國(guó)信通院泰爾終端實(shí)驗(yàn)室一直關(guān)注各類移動(dòng)終端應(yīng)用軟件的安全性能,近期依據(jù)相關(guān)標(biāo)準(zhǔn)對(duì)多款基于安卓操作系統(tǒng)的手機(jī)銀行APP進(jìn)行了安全測(cè)評(píng),結(jié)果不容樂(lè)觀。
今年以來(lái),國(guó)內(nèi)已經(jīng)發(fā)生多起通過(guò)手機(jī)銀行APP盜取客戶信息及資金的情況。中國(guó)信通院泰爾終端實(shí)驗(yàn)室的工程師近期針對(duì)基于安卓操作系統(tǒng)的多款手機(jī)銀行APP安全性進(jìn)行了較為全面的分析評(píng)測(cè),涉及中國(guó)銀行、中信銀行、建設(shè)銀行等國(guó)內(nèi)多家大型商業(yè)銀行。測(cè)評(píng)內(nèi)容包括:通信安全性、鍵盤(pán)輸入安全性、客戶端運(yùn)行時(shí)安全性、客戶端安全防護(hù)、代碼安全性和客戶端業(yè)務(wù)邏輯安全性等6個(gè)方面的39項(xiàng)內(nèi)容。
手機(jī)銀行APP在邏輯設(shè)計(jì)及流程設(shè)計(jì)時(shí)可能存在一定的缺陷,導(dǎo)致黑客可以識(shí)別轉(zhuǎn)賬、匯款時(shí)的敏感函數(shù),繼而將客戶的交易數(shù)據(jù)篡改為黑客指定的賬戶,造成本應(yīng)轉(zhuǎn)給正常用戶的資金被轉(zhuǎn)到黑客的賬戶,此類情況會(huì)造成個(gè)人用戶或企業(yè)客戶的巨大經(jīng)濟(jì)損失。
實(shí)驗(yàn)室的工程師通過(guò)實(shí)驗(yàn)發(fā)現(xiàn)此次測(cè)試的手機(jī)銀行APP普遍存在高危漏洞,用戶在進(jìn)行轉(zhuǎn)賬交易時(shí),黑客能夠通過(guò)一定的技術(shù)手段劫持用戶的轉(zhuǎn)賬信息,從而導(dǎo)致用戶的轉(zhuǎn)賬資金被非法竊取。同時(shí),工程師還發(fā)現(xiàn)被檢測(cè)的手機(jī)銀行APP自身防御手段較弱,易被破解,安全性較低。
部分手機(jī)銀行APP存在的問(wèn)題如下:
(1)手機(jī)銀行APP交易數(shù)據(jù)可被篡改
手機(jī)銀行APP在運(yùn)行過(guò)程中,用戶進(jìn)行轉(zhuǎn)賬、匯款等交易時(shí)的賬號(hào),開(kāi)戶行等敏感數(shù)據(jù)信息在寫(xiě)入移動(dòng)終端內(nèi)存時(shí),可被黑客利用技術(shù)手段進(jìn)行篡改,使得原本要轉(zhuǎn)給親友或企業(yè)的資金被轉(zhuǎn)入黑客指定的賬戶。
(2)手機(jī)銀行APP運(yùn)行時(shí)關(guān)鍵Activity組件容易被劫持
手機(jī)銀行APP關(guān)鍵組件不具備防止進(jìn)入后臺(tái)或提示用戶等相關(guān)功能,黑客可以對(duì)登錄或支付界面進(jìn)行劫持替換,用戶的敏感數(shù)據(jù)存在被竊取的風(fēng)險(xiǎn)。黑客可以在本地監(jiān)聽(tīng)用戶的狀態(tài),當(dāng)用戶登陸或者輸入交易密碼時(shí),彈出偽造的界面誘騙用戶輸入正確的賬號(hào)口令,從而竊取用戶信息。
(3)手機(jī)銀行APP抗逆向分析能力不足
實(shí)驗(yàn)室的工程師使用反編譯工具、反匯編軟件對(duì)手機(jī)銀行APP進(jìn)行反編譯,發(fā)現(xiàn)手機(jī)銀行APP可被反編譯并且泄露出大量有效代碼。黑客能夠通過(guò)反編譯,在客戶端程序中植入木馬、惡意代碼以及廣告等,客戶端程序如果沒(méi)有自校驗(yàn)機(jī)制的話,黑客可以通過(guò)篡改客戶端程序竊取手機(jī)用戶的隱私信息。
(4)手機(jī)銀行APP能夠被重新編譯二次打包
實(shí)驗(yàn)室工程師對(duì)手機(jī)銀行APP進(jìn)行反編譯,通過(guò)修改代碼、XML、資源文件并對(duì)其重編譯二次打包,重打包后的手機(jī)銀行APP能夠正常運(yùn)行。黑客通過(guò)在手機(jī)銀行APP程序中植入惡意代碼或廣告等,竊取手機(jī)用戶的資金或隱私信息。
(5)手機(jī)銀行APP可進(jìn)行動(dòng)態(tài)調(diào)試
手機(jī)銀行APP可以通過(guò)GDB、IDA等調(diào)試器進(jìn)行動(dòng)態(tài)調(diào)試,黑客可利用GDB或IDA等調(diào)試器跟蹤運(yùn)行程序,并且執(zhí)行查看、修改內(nèi)存中的代碼和數(shù)據(jù)等行為,從而獲取用戶的敏感信息。
(6)手機(jī)銀行APP代碼允許任意備份
手機(jī)銀行APP代碼允許任意備份,黑客通過(guò)備份應(yīng)用程序獲得用戶的敏感信息。
(7)在發(fā)布版本的手機(jī)銀行APP中留存測(cè)試用的組件或賬號(hào)信息
一些手機(jī)銀行APP在發(fā)布版中留存了測(cè)試用的組件或賬號(hào)信息,直接暴露服務(wù)器接口的調(diào)用參數(shù),這樣大大降低了逆向分析者的工作難度,甚至還可能泄露測(cè)試用賬戶,給用戶帶來(lái)極大安全隱患。
總結(jié)
從上述評(píng)測(cè)結(jié)果可知,被測(cè)手機(jī)銀行APP都存在高危風(fēng)險(xiǎn),建議相關(guān)銀行采取更加安全的APP加固解決方案,同時(shí)增加應(yīng)用分發(fā)渠道監(jiān)控,第一時(shí)間監(jiān)測(cè)盜版、篡改應(yīng)用發(fā)布上線;增加應(yīng)用自身完整性校驗(yàn)功能,檢測(cè)到應(yīng)用被篡改后,及時(shí)提醒用戶卸載非法應(yīng)用或者自動(dòng)進(jìn)行更新修復(fù)。
對(duì)于一般的手機(jī)銀行APP使用者,實(shí)驗(yàn)室的工程師建議:
(1)謹(jǐn)慎使用手機(jī)銀行APP執(zhí)行轉(zhuǎn)賬等敏感操作;
(2)選擇在信息安全防護(hù)較強(qiáng)、用戶權(quán)益保護(hù)良好的銀行辦理金融業(yè)務(wù);
(3)從銀行官方網(wǎng)站或正規(guī)渠道下載手機(jī)銀行APP;
(4)提高信息安全意識(shí),保護(hù)個(gè)人隱私數(shù)據(jù)。
提示:
為避免具體評(píng)測(cè)方法和手機(jī)銀行APP漏洞被人惡意利用,本報(bào)告暫不公開(kāi)每個(gè)手機(jī)銀行APP的具體測(cè)試細(xì)節(jié)和評(píng)測(cè)結(jié)果。我們已將詳細(xì)評(píng)測(cè)結(jié)果及相關(guān)漏洞信息反饋各家銀行,提醒相關(guān)銀行盡快修補(bǔ)漏洞,確保用戶資金安全。