《移動(dòng)金融客戶端應(yīng)用軟件安全管理規(guī)范》技術(shù)解讀

王志超/朱隆國
邏輯漏洞是指業(yè)務(wù)/功能上的設(shè)計(jì)缺陷,常規(guī)漏洞掃描器無法發(fā)現(xiàn)邏輯漏洞,需要開發(fā)者對(duì)于認(rèn)證、校驗(yàn)、交易處理等業(yè)務(wù)場景進(jìn)行測試,確保不存在邏輯漏洞,開發(fā)者可以利用自動(dòng)化的檢測工具進(jìn)行全面檢查客戶端代碼是否存在調(diào)用具有已知安全漏洞的函數(shù)。

本文來自安全牛,作者/王志超/朱隆國。

移動(dòng)客戶端(移動(dòng)APP)主要面臨的威脅包括反編譯、調(diào)試、篡改/重打包、輸入記錄、組件安全、注入和Hook、本地敏感數(shù)據(jù)泄露等。為貫徹落實(shí)《中華人民共和國國家網(wǎng)絡(luò)安全法》,加強(qiáng)移動(dòng)金融客戶端應(yīng)用軟件安全管理,構(gòu)建覆蓋生命周期的管理機(jī)制,切實(shí)保障客戶端軟件安全,中國人民銀行2019年發(fā)布《移動(dòng)金融客戶端應(yīng)用軟件安全管理規(guī)范》(JR/T0092-2019)(以下簡稱“規(guī)范”)。本文將從技術(shù)角度,對(duì)規(guī)范管理要求進(jìn)行分析解讀并為金融機(jī)構(gòu)開展相應(yīng)的合規(guī)工作提出建議。

QQ截圖20211119092508.png

01points

規(guī)范內(nèi)容解讀

(一)規(guī)范總體框架

《移動(dòng)金融客戶端應(yīng)用軟件安全管理規(guī)范》(JRT 0092-2019),分別從技術(shù)和管理兩個(gè)層面展開,對(duì)移動(dòng)金融客戶端應(yīng)用軟件以及客戶端應(yīng)用軟件設(shè)計(jì)、開發(fā)、維護(hù)和發(fā)布的管理做出了明確要求。

總體框架

QQ截圖20211119092508.png

主要內(nèi)容

QQ截圖20211119092508.png

適用范圍

《移動(dòng)金融客戶端應(yīng)用軟件安全管理規(guī)范》(JRT 0092-2019)本標(biāo)準(zhǔn)規(guī)定了移動(dòng)金融客戶端應(yīng)用軟件的安全要求,以及客戶端應(yīng)用軟件設(shè)計(jì)、開發(fā)、維護(hù)和發(fā)布的管理要求。

本標(biāo)準(zhǔn)適用于移動(dòng)金融客戶端應(yīng)用軟件的設(shè)計(jì)、開發(fā)、維護(hù)及發(fā)布過程,也適用于評(píng)估機(jī)構(gòu)對(duì)相關(guān)應(yīng)用進(jìn)行安全性和標(biāo)準(zhǔn)符合性評(píng)估。

(二)身份認(rèn)證安全

在規(guī)范中,強(qiáng)調(diào)了檢測金融客戶端身份認(rèn)證方式、認(rèn)證信息安全輸入和展示、認(rèn)證失敗處理機(jī)制以及密碼的設(shè)定與重置方面的安全性,其中認(rèn)證信息安全性需要開發(fā)者重點(diǎn)檢查認(rèn)證信息輸入時(shí)是否具有安全性措施,并強(qiáng)調(diào)以客戶端應(yīng)用軟件在輸入賬戶登錄密碼、銀行卡支付密碼和網(wǎng)絡(luò)支付交易密碼等認(rèn)證信息時(shí)采用了替換輸入框原文、逐字符加密、字符加密、防范鍵盤竊聽、自定義軟鍵盤,或者通過其他方式保證攻擊測試無法獲取輸入信息的明文作為通過標(biāo)準(zhǔn)。

QQ截圖20211119092508.png

(三)邏輯安全

此項(xiàng)強(qiáng)調(diào)了金融客戶端邏輯安全設(shè)計(jì)、軟件權(quán)限控制、風(fēng)險(xiǎn)控制、回退處理以及異常處理方面的要求,其中邏輯安全設(shè)計(jì)需要開發(fā)者對(duì)于認(rèn)證、校驗(yàn)、交易處理等業(yè)務(wù)場景進(jìn)行威脅建模,確保不存在邏輯漏洞,同時(shí)規(guī)范要求客戶端代碼避免調(diào)用具有已知安全漏洞的函數(shù),避免敏感數(shù)據(jù)硬編碼等安全問題。

QQ截圖20211119092508.png

(四)安全功能設(shè)計(jì)

此項(xiàng)強(qiáng)調(diào)了金融客戶端組件安全、接口安全、客戶端抗攻擊能力以及環(huán)境檢測的檢測要求,全面檢測客戶端三方組件、H5、接口,其中應(yīng)通過有效手段檢測客戶端軟件是否具備抵御靜態(tài)分析、動(dòng)態(tài)調(diào)試、防篡改的能力,安全檢測、安全防護(hù)、客戶端運(yùn)行環(huán)境檢測全方位考量已經(jīng)成為金融行業(yè)客戶端安全能力建設(shè)的必要手段。

QQ截圖20211119092508.png

(五)密碼算法及密鑰管理

此項(xiàng)重點(diǎn)強(qiáng)調(diào)金融客戶端密碼算法以及密鑰管理,對(duì)密碼算法、密鑰長度都做了相關(guān)的要求,其中密鑰的生成、傳輸、存儲(chǔ)應(yīng)具備隨機(jī)性和機(jī)密性。

QQ截圖20211119092508.png

(六)數(shù)據(jù)安全

此項(xiàng)則是從金融客戶端數(shù)據(jù)獲取、訪問控制、數(shù)據(jù)傳輸、數(shù)據(jù)存儲(chǔ)、數(shù)據(jù)展示、數(shù)據(jù)銷毀即數(shù)據(jù)安全全生命周期角度提出要求,其中數(shù)據(jù)獲取不僅需要考慮個(gè)人金融信息收集的合規(guī),還需要考量客戶端本地?cái)?shù)據(jù)安全、防篡改、防注入、防調(diào)試等高危風(fēng)險(xiǎn)漏洞,開發(fā)者需要從檢測到加固做好全面防護(hù)。數(shù)據(jù)傳輸則是以針對(duì)不同場景的安全防護(hù)能力作為通過標(biāo)準(zhǔn)包括應(yīng)用層數(shù)據(jù)的機(jī)密性、完整性不可抵賴性,傳輸層數(shù)據(jù)的機(jī)密性、傳輸協(xié)議安全及證書雙向校驗(yàn),需要對(duì)金融客戶端進(jìn)行逐一的滲透測試以檢查薄弱點(diǎn)。

QQ截圖20211119092508.png

02points

金融機(jī)構(gòu)的合規(guī)建議

(一)加強(qiáng)安全輸入,提升即時(shí)防護(hù)能力

如果缺少安全輸入控制的能力,可能存在惡意程序?qū)τ脩糨斎氲拿舾行畔ⅲㄖ饕敲艽a)進(jìn)行竊聽導(dǎo)致輸入敏感信息泄露的風(fēng)險(xiǎn)。建議盡量使用系統(tǒng)自定義的隨機(jī)軟鍵盤(而非系統(tǒng)輸入法)來輸入敏感信息,加密擊鍵,在敏感信息的輸入過程盡量避免視覺反饋。

(二)加強(qiáng)邏輯漏洞的檢測識(shí)別能力

邏輯漏洞是指業(yè)務(wù)/功能上的設(shè)計(jì)缺陷,常規(guī)漏洞掃描器無法發(fā)現(xiàn)邏輯漏洞,需要開發(fā)者對(duì)于認(rèn)證、校驗(yàn)、交易處理等業(yè)務(wù)場景進(jìn)行測試,確保不存在邏輯漏洞,開發(fā)者可以利用自動(dòng)化的檢測工具進(jìn)行全面檢查客戶端代碼是否存在調(diào)用具有已知安全漏洞的函數(shù)。

(三)加強(qiáng)軟件客戶端自身的防護(hù)能力

成功的反編譯將使得攻擊者能夠完整地分析APP的運(yùn)行邏輯,尤其是相關(guān)業(yè)務(wù)接口協(xié)議、和通信加密的實(shí)現(xiàn)。針對(duì)應(yīng)用程序關(guān)鍵代碼明文暴露降低的情況,攻擊者或惡意程序可通過修改代碼獲取關(guān)鍵信息或繞過部分邏輯直接操作。缺失完整性校驗(yàn)主要會(huì)面臨盜版、破解內(nèi)購、在應(yīng)用市場中夾帶木馬、廣告等風(fēng)險(xiǎn)。建議客戶端進(jìn)行加殼處理防止攻擊者反編譯客戶端,至少要對(duì)核心代碼進(jìn)行混淆??蛻舳嗽诿看伍_機(jī)啟動(dòng)時(shí)進(jìn)行客戶端自身的應(yīng)用完整性校驗(yàn),在驗(yàn)證邏輯中不使用MANIFEST.MF中的數(shù)據(jù)作為驗(yàn)證憑證,同時(shí)需驗(yàn)證是否有不屬于該客戶端版本的新文件添加,驗(yàn)證過程于服務(wù)器端完成。

(四)加強(qiáng)密鑰管理選用安全算法

需要關(guān)注密鑰的生成、傳輸、存儲(chǔ)安全,密碼系統(tǒng)的強(qiáng)度跟加密算法復(fù)雜程度、密鑰機(jī)密程度、密鑰長度、初始化向量以及如何在密碼系統(tǒng)內(nèi)協(xié)同工作有著緊密關(guān)系。

(五)加強(qiáng)本地?cái)?shù)據(jù)及傳輸安全

檢測傳輸協(xié)議是否安全及程序中是否存在相關(guān)的殘留信息,如測試內(nèi)網(wǎng)信息、測試頁面、私鑰證書、測試或者管理員賬號(hào)信息等。此類信息泄露可能造成數(shù)據(jù)泄露導(dǎo)致的系統(tǒng)入侵。設(shè)備中應(yīng)測試程序?qū)?yīng)的數(shù)據(jù)文件夾是否包含敏感數(shù)據(jù)。由于設(shè)備可以進(jìn)行“越獄”,且“越獄”之后數(shù)據(jù)不會(huì)丟失,則導(dǎo)致本地存儲(chǔ)敏感信息將造成較大風(fēng)險(xiǎn)。建議刪除對(duì)應(yīng)的數(shù)據(jù)殘留,對(duì)數(shù)據(jù)文件夾敏感信息加密處理。

作者簡介:

王志超,谷安天下金融審計(jì)負(fù)責(zé)人,10多年的信息安全、科技風(fēng)險(xiǎn)、科技審計(jì)、業(yè)務(wù)連續(xù)性、科技外包、數(shù)據(jù)治理、金融科技等咨詢及審計(jì)服務(wù)經(jīng)驗(yàn),獲得CISA、COBIT、CDPSE、CCSK、TOGAF、ISO22301 LI等證書,熟悉銀行業(yè)、保險(xiǎn)業(yè)、證券業(yè)、大型央企的科技管理風(fēng)險(xiǎn)與應(yīng)對(duì)措施,對(duì)科技外包、業(yè)務(wù)連續(xù)性、數(shù)據(jù)治理、大數(shù)據(jù)、人工智能、數(shù)字化轉(zhuǎn)型等領(lǐng)域均有著較為深入的研究,多次與銀行共同參與銀保監(jiān)會(huì)組織的信息科技風(fēng)險(xiǎn)管理課題研究,并獲得多個(gè)獎(jiǎng)項(xiàng)。

朱隆國,谷安天下高級(jí)技術(shù)顧問,從事安全行業(yè)5年,熟悉配置合規(guī)檢查、漏洞掃描、滲透測試、Android/IOS客戶端安全測試、接口安全測試等。獲得CISSP資質(zhì)認(rèn)證,具有較強(qiáng)的攻防實(shí)戰(zhàn)經(jīng)驗(yàn),多次參與金融行業(yè)網(wǎng)絡(luò)攻防重大保障活動(dòng)。

THEEND

最新評(píng)論(評(píng)論僅代表用戶觀點(diǎn))

更多
暫無評(píng)論