金融行業移動App安全標準化建設研究

隨着移動互聯網的普遍應用,移動金融服務迎來了爆發式增加的時代,打破了傳統金融服務在空間和時間上的限制,根據《中國互聯網絡發展情況統計報告》統計可知,截止2017年12月,我國使用網上支付的用戶規模達到 5.31億,較2016年末增長5661萬人,年增加率爲11.9%,使用率達68.8%。根據《2017支付體系運行整體狀況》統計可知,2017年,銀行業金融機構共處理電子支付業務1 525.80億筆,金額2 419.20萬億元,較2016年均有不一樣程度的增加。java

在移動互聯網時代,移動金融在生活中扮演着愈來愈重要的角色,移動金融正之前所未有的速度改變着人們的工做和生活方式,移動金融將成爲鏈接客戶的主要渠道,併成爲客戶源的主要入口和數據採集入口,移動金融是決定金融市場成敗的關鍵因素。算法

移動金融APP安全概述安全

移動金融給人們的生活帶來了極大的便利,可是隨着移動金融市場的需求快速增加,移動金融APP的開發與應用也是成幾何級數量遞增,移動金融APP在沒有安全防範意識和安全開發規範的限制下迅速發展,在APP應用安全性方面的缺失直接成爲阻礙移動金融前進的主要緣由。服務器

因而咱們能夠看到,近幾年針對移動金融APP的攻擊持續不斷,逆向破解、病毒植入、仿冒侵權、信息截取等攻擊給移動金融行業的安全形成了極大的威脅,每一年對企業形成直接經濟損失高達1500億元,嚴重影響了企業收益,也對用戶的隱私和財產的安全形成了極大的損害。並且,黑客和黑產從業者的攻擊技術和手段在快速的更新迭代,一旦咱們的防護能力不能與之相匹敵,出現「道高一尺魔高一丈」的技術代差,那麼「人爲刀俎我爲魚肉」的悲劇將不可避免的發生。網絡

移動金融APP安全標準化工做的意義架構

正是基於當前嚴峻的移動金融安全形勢,2018年8月14日,中國人民銀行辦公廳下發《中國人民銀行辦公廳關於開展支付安全風險專項排查工做的通知》銀辦發〔2018〕146號(如下簡稱146號文),開展支付安全風險專項排查,旨在要求商業銀行、非銀行支付機構、清算機構等從業機構切實增強風險防控意識,提升風險防控水平,保障金融體系的健康與安全。框架

從全面保障移動金融網絡安全的角度來看,貫徹落實146號文,開展移動金融網絡安全標準化工做,是進一步夯實移動金融行業健康發展的根基,是移動金融行業切實落實《中華人民共和國網絡安全法》的集中體現,對提高移動金融網絡安全防禦水平,保障移動金融網絡安全具備重要意義。 運維

移動金融APP安全政策和標準性能

網絡安全法律政策測試

當前國內外在圍繞互聯網金融相關網絡安全出臺的法律政策方面,已經逐漸造成繁雜細密的監管和制度體系,爲互聯網金融提供可實施的規範。

國外狀況

  歐盟GDPR

  GDPR是英文「General Data Protection Regulation」的縮寫,一般翻譯爲「通用數據保護條例」,是歐盟議會和歐盟理事會在2016年4月經過,在2018年5月開始強制實施的規定,目的在於遏制我的信息被濫用,保護我的隱私。

  GDPR本質上來講是一版強制執行隱私條例,規定了企業在對用戶的數據收集、存儲、保護和使用時的新標準;另外一方面,對於自身的數據,也給予了用戶更大處理權。由於考慮到全球性是寫入互聯網基因內到屬性,幾乎全部的服務都會受到影響,因此生活照歐洲以外的人其實也會今後條例中獲益。

  GDPR規定了全部歐盟的公民所享有的數字生活中的權利,在歐洲,事實上也是目前世界範圍內,GDPR是最完善、最嚴格的隱私保護規定。

國內狀況

  中國人民銀行146文

  由中國人民銀行辦公廳發佈《關於開展支付安全風險專項排查工做的通知》(銀辦發〔2018〕146號),通知稱爲進一步增強移動支付領域網絡與信息安全管理,有效防範移動支付風險,切實保障消費者合法權益,人民銀行決定開展支付安全風險專項排查工做 。

移動APP安全-改-1.jpg

  按照《支付安全風險專項排查列表》開展專項排查,主要內容以下:

  1、針對客戶端應用軟件安全,排查客戶端應用軟件關於敏感信息、數據傳輸等方面存在的安全隱患;

  2、針對支付系統安全管理,排查支付業務系統在系統安全、交易安全、數據保護、業務連續性、帳戶管理、內控管理等方面存在的問題;

  3、針對支付交易安全管理,督查支付交易報文規範化改造、終端信息註冊等工做落實狀況,排查支付產品質量管理方面存在的不足,切實防範支付業務安全風險;

  須要獲得重視的是,央行往期排查主要聚焦在支付系統安全,而這一次的排查重點增長了對客戶端應用軟件安全的要求,客戶端安全已經受到重視,將來在這方面的監管要求將愈來愈高。 

移動APP安全-改-2.jpg

等保2.0

等保全稱爲「信息系統安全等級保護」,現改成「網絡安全等級保護」,是指對網絡和信息系統按照重要性等級分級別保護的一種工做。安全保護等級越高,安全保護能力就越強。

這套制度標準的實施爲信息系統安全開闢了一條可落地可操做的道路。不只爲各信息系統提供體系化的指導,根據各自責任落實相應技術措施,避免安全工做的不做爲、或亂做爲;同時爲落實信息系統安全工做提供方向和依據,明確法律法規要求,讓安全工做有法可依;還致力於落實保障我的信息、資金等安全,爲我的隱私提供保護傘

爲了配合《網絡安全法》的實施,同時適應移動互聯新技術發展狀況下網絡安全等級保護工做的開展,新標準針對共性安全保護需求提出安全通用要求,針對移動互聯新技術個性安全保護需求提出安全擴展要求,造成新的網絡安全等級保護基本要求標準,移動互聯安全擴展要求標準以下:

移動App安全-3.png

移動金融APP安全威脅分析

Top 10 漏洞類型

(1)通訊數據明文發送

客戶端APP與服務器端交互的數據經過明文的通訊信道傳輸

(2)通訊數據可解密

客戶端APP與服務器交互的數據傳輸加密,但數據依然能夠被解密

(3)敏感數據本地可破解

客戶端APP將敏感數據(如登陸密碼,手勢密碼等)以明文存儲在本地,或加密 存儲但經過逆向分析程序能夠破解該數據

(4)調試信息泄露

客戶端APP將開發時幫助調試的信息打印出來,這些信息一般包含一些敏感的參數,消息的明文等。

(5)敏感信息泄露

客戶端APP代碼中泄露敏感數據,如對稱加密密鑰,非對稱加密中的私鑰,認證使用的共享密鑰,不該該被暴露的後臺服務器管理地址等等。

(6)密碼學誤用

客戶端APP代碼中使用了不安全的密碼學實現,例如固定硬編碼的對稱加密,ECB模式的對稱加密,CBC模式中的IV固定,不安全的公鑰進行非對稱加密等。

(7)功能泄露

客戶端APP中高權限等行爲和功能(如發送短信,讀取聯繫人等)沒有被安全的保護,被其餘無受權的應用程序調試或訪問。

(8)可二次打包

客戶端APP可被修改代碼後,從新打包發佈在市場上供用戶下載

(9)可調試

客戶端APP可以被調試,動態的提取,修改運行時的程序數據和邏輯

(10)代碼可逆向

客戶端APP的邏輯可以被輕易獲取和逆向,獲得代碼和程序中的敏感數據

典型業務場景

應用仿冒

移動金融APP應用井噴式增加,致使市場大量金融應用堆積,種類繁多,魚目混雜,這些應用參差不齊,甚至有些爲惡意應用。因爲使用人數較多,伴隨着愈來愈多的仿冒應用參雜其中,給用戶羣體形成損失也是巨大的。

應用仿冒場景中,企業版應用被惡意者反編譯破解,加入惡意代碼後從新打包發佈,或者整個程序都是惡意代碼,只是利用了一部分企業版的資源文件圖片等,這類惡意程序投入市場,會嚴重影響其餘用戶的資金安全。

二次打包漏洞,一般是因爲企業沒有對程序代碼進行安全加固,經過這種漏洞,惡意者能夠獲取整個程序的邏輯代碼,從而進行惡意應用的僞造危害用戶。

通過統計分析,大部分金融行業的APP應用存在此類問題,缺少必要的保護措施。

協議破解

移動金融的用戶數據最爲真實和最爲完整,爲保證用戶數據信息不被泄露,廠商定製化了多種多樣的加密協議來保護數據傳輸安全,在複雜的網絡環境中,若是加密數據的算法被破解,那一切保護措施將形同虛設。

協議破解場景中,一般是因爲客戶端代碼被逆向,加密算法代碼邏輯信息被提取,對算法進行重構解密,這樣一來,加密的數據流量就能夠被解密獲取。

算法重構風險,一般是因爲設計者在設計算法的時候沒有采用行業標準處理,或者採用了固定的密鑰或者填充模式,在加上沒有對核心算法代碼進行保護,致使整個加密算法被逆向分析,進而致使互聯網傳輸的加密數據被解密明文獲取。

支付篡改

移動支付通過多年的發展,愈來愈多的商戶和消費者注重移動支付設備的便捷性,在多元化的消費支付場景中,除了轉帳以外還有聚合二維碼等方式,離線支付等便捷性帶來的就是支付的安全問題,一旦在不可信的設備發生了交易,用戶的資金安全時刻都處於危險之中。

支付篡改場景中,一般是因爲客戶端核心支付邏輯被篡改,或者是核心代碼被重構致使改變了原有的支付的性質,從而實現惡意支付。

代碼篡改風險,一般是因爲沒有對核心代碼進行虛擬化處理,或者沒有對程序運行環境進行檢測,致使攻擊者能夠更改程序運行的邏輯,從而破壞支付安全。

移動金融APP安全標準化體系

移動金融的發展,符合監管是基本要求,金融機構安全標準化在加速落地,

網絡安全標準化需求

根據我國移動金融行業發展的實際需求,結合上文概括的安全威脅,移動金融APP安全影響範圍涵蓋了軟硬件設備,系統,協議與接口以及平臺等各方面,目前主要存在以下標準化需求。

一、移動平臺存在系統漏洞,雖然平臺自己有比較規範的安全機制,如應用權限控制;內核層經過沙箱機制 隔離不一樣進程的資源,並輔助獨特的內存管理機制和進程間通訊機制等,因爲自己的開源性,推廣開放等因素,這些問題一旦被攻擊者利用,用戶的利益將收到侵害,解決該問題須要對移動平臺環境進行檢測感知。

二、移動開發語言存在先天性缺陷,具備表明性的java,C#語言爲了保證它們的高級特性(好比反射),程序編譯事後並無成爲可運行的二進制文件,而是一種中間語言,在編譯的過程當中保留了源程序的絕大部分信息,只有不多的信息丟失,這樣一來,中間語言能夠在必定程度上反編譯爲程序語言,反編譯出來的程序其結構和功能都是完備的;彙編語言就是使用助記符和地址標號來替代原來的二進制機器語言,減小的記憶和計算(地址可由編譯程序計算),但仍有一一對應的特色,因此機器語言能夠反彙編到彙編語言,具備表明的有C/C++語言,解決該問題必須對程序進行加密處理。

三、常規信息安全領域中可以直接使用的基礎共性標準相對較少,缺少針對性很強的安全需求分析方法,參考架構,概念模型等內容,故須要就解決此類問題制定支撐性等基礎安全規範。

四、當前移動金融相關各種服務須要相應安全管理標準支撐。隨着移動金融的的普及深刻,以安全漏洞修復爲表明的網絡服務頻率愈來愈高,黑客可藉助此類服務經過利用簽名漏洞或僞造簽名等手段植入相應後門,從而進行資金詐騙;爲防範此類安全風險,除了加固相 應安全功能外,還應對服務管理提出相應安全要求,包括在服務平臺層面,而且安全事件不可避免的發生後應急響應管理一樣須要標準化指引。

五、針對移動金融APP的安全測評類測試標準缺乏,常規的風險評估測試標準並不徹底適用。目前常規的自動化檢測平臺只能判斷APP是否採用了加固手段,沒法判斷加固手段的強弱以及其產品性能,須要採用更深層次的測試標準來驗證其安全性。

體系框架圖

移動App安全-4.png

標準體系內容

基於上述標準化需求分析,結合信息安全標準體系通用框架,現將移動金融APP安全標準體系框架定義爲「基礎通用」、「技術要求」、「服務管理」、「測評規範」四個部分,同時根據各具體標準類在內容、技術等級上的共性和區別,對四部分作進一步細分,造成內容基本完整、結構基本合理的12個子類。

基礎通用

基礎通用類標準主要包括防護檢測、代碼防禦、資源加密等三個大類標準。防護檢測是用來衡量APP運行環境的安全性,是保證APP在整個執行階段的安全基礎,只有基於安全可靠的環境才能按照開發者企業的意願正常執行APP流程,爲APP啓動事後的業務執行提供可靠運行環境;代碼保護是用於彌補開發語言先天性缺陷(反編譯/反彙編),針對不一樣語言環境以及應對不一樣業務場景提供通用的安全防禦和方法;資源加密應用於核心用戶數據的二次加密,在防護檢測的基礎上升級防護手段。

技術要求

技術要求類標準主要包括設計規範,編碼規範,防禦規範等三類標準。設計規範標準基於軟件安全架構設計的基本原則,結合應用軟件通用安全需求,提供一個安全依據;編碼規範標準旨在規避開發編碼過程當中常見的安全性問題;防禦規範提供一個安全基線的配置。

服務管理

服務管理類標準主要包括漏洞修復,應急響應,平臺運營等三類標準。漏洞修復標準主要是針對目前已有業務模式中存在的安全威脅提供防禦方法和控制措施;應急響應標準主要是針對各種突發的安全事件的應急預案的制定和實施,以及相應維護管理要求提供支持;服務運營標準主要是針對金融APP服務運營平臺的安全問題,提出相應的安全運維要求。

測評規範 

測評規範類標準主要包括風險評估、產品測評、系統測評等三類標準。風險評估類標準主要針對不一樣業務功能定義相應的風險評估流程、方法等內容;產品測評類、系統測評類標準 主要針對產品級、系統級兩個層面的移動安全要求給出相應測試評價方法,以知足各層級廠商、測評機構和監管組織機構的需求。

相關文章
相關標籤/搜索