今年以來,國內已經發生多起通過手機銀行APP盜取客戶信息及資金的情況。中國信通院泰爾終端實驗室的工程師近期針對基於安卓作業系統的多款手機銀行APP安全性進行了較為全面的分析評測,涉及中國銀行、中信銀行、建設銀行等國內多家大型商業銀行。測評內容包括:通信安全性、鍵盤輸入安全性、客戶端運行時安全性、客戶端安全防護、代碼安全性和客戶端業務邏輯安全性等6個方面的39項內容。
手機銀行APP在邏輯設計及流程設計時可能存在一定的缺陷,導致黑客可以識別轉帳、匯款時的敏感函數,繼而將客戶的交易數據篡改為黑客指定的帳戶,造成本應轉給正常用戶的資金被轉到黑客的帳戶,此類情況會造成個人用戶或企業客戶的巨大經濟損失。
實驗室的工程師通過實驗發現此次測試的手機銀行APP普遍存在高危漏洞,用戶在進行轉帳交易時,黑客能夠通過一定的技術手段劫持用戶的轉帳信息,從而導致用戶的轉帳資金被非法竊取。同時,工程師還發現被檢測的手機銀行APP自身防禦手段較弱,易被破解,安全性較低。
部分手機銀行APP存在的問題如下:
(1)手機銀行APP交易數據可被篡改
手機銀行APP在運行過程中,用戶進行轉帳、匯款等交易時的帳號,開戶行等敏感數據信息在寫入移動終端內存時,可被黑客利用技術手段進行篡改,使得原本要轉給親友或企業的資金被轉入黑客指定的帳戶。
(2)手機銀行APP運行時關鍵Activity組件容易被劫持
手機銀行APP關鍵組件不具備防止進入後臺或提示用戶等相關功能,黑客可以對登錄或支付界面進行劫持替換,用戶的敏感數據存在被竊取的風險。黑客可以在本地監聽用戶的狀態,當用戶登陸或者輸入交易密碼時,彈出偽造的界面誘騙用戶輸入正確的帳號口令,從而竊取用戶信息。
(3)手機銀行APP抗逆向分析能力不足
實驗室的工程師使用反編譯工具、反彙編軟體對手機銀行APP進行反編譯,發現手機銀行APP可被反編譯並且洩露出大量有效代碼。黑客能夠通過反編譯,在客戶端程序中植入木馬、惡意代碼以及廣告等,客戶端程序如果沒有自校驗機制的話,黑客可以通過篡改客戶端程序竊取手機用戶的隱私信息。
(4)手機銀行APP能夠被重新編譯二次打包
實驗室工程師對手機銀行APP進行反編譯,通過修改代碼、XML、資源文件並對其重編譯二次打包,重打包後的手機銀行APP能夠正常運行。黑客通過在手機銀行APP程序中植入惡意代碼或廣告等,竊取手機用戶的資金或隱私信息。
(5)手機銀行APP可進行動態調試
手機銀行APP可以通過GDB、IDA等調試器進行動態調試,黑客可利用GDB或IDA等調試器跟蹤運行程序,並且執行查看、修改內存中的代碼和數據等行為,從而獲取用戶的敏感信息。
(6)手機銀行APP代碼允許任意備份
手機銀行APP代碼允許任意備份,黑客通過備份應用程式獲得用戶的敏感信息。
(7)在發布版本的手機銀行APP中留存測試用的組件或帳號信息
一些手機銀行APP在發布版中留存了測試用的組件或帳號信息,直接暴露伺服器接口的調用參數,這樣大大降低了逆向分析者的工作難度,甚至還可能洩露測試用帳戶,給用戶帶來極大安全隱患。
總結
從上述評測結果可知,被測手機銀行APP都存在高危風險,建議相關銀行採取更加安全的APP加固解決方案,同時增加應用分發渠道監控,第一時間監測盜版、篡改應用發布上線;增加應用自身完整性校驗功能,檢測到應用被篡改後,及時提醒用戶卸載非法應用或者自動進行更新修復。
對於一般的手機銀行APP使用者,實驗室的工程師建議:
(1)謹慎使用手機銀行APP執行轉帳等敏感操作;
(2)選擇在信息安全防護較強、用戶權益保護良好的銀行辦理金融業務;
(3)從銀行官方網站或正規渠道下載手機銀行APP;
(4)提高信息安全意識,保護個人隱私數據。