app安全測試是檢驗(yàn)軟件安全等級以及檢查程序中的漏洞、bug、風(fēng)險(xiǎn)并防止外來的惡意攻擊,目的是確定軟件系統(tǒng)的所有可能漏洞和弱點(diǎn),這些漏洞和弱點(diǎn)可能導(dǎo)致信息、收入損失以及用戶聲譽(yù)受損等不良后果。那么app安全測試的常用方法有哪些?
1、靜態(tài)代碼檢查
通過代碼走讀的方式對源代碼的安全性進(jìn)行測試,常用的代碼檢查方法有控制流、數(shù)據(jù)流、信息流等,通過這些測試方法與安全規(guī)則庫進(jìn)行匹配,進(jìn)而發(fā)現(xiàn)潛在的安全漏洞。該方法主要是在編碼階段進(jìn)行測試,能夠盡可能早地發(fā)現(xiàn)安全性問題。
2、動態(tài)滲透測試
主要是借助工具或手工來模擬黑客的輸入,對軟件產(chǎn)品安裝、運(yùn)行過程的行為監(jiān)測和分析,進(jìn)而發(fā)現(xiàn)軟件中的安全性問題。該階段一般在系統(tǒng)測試時(shí)進(jìn)行,但覆蓋率較低,因?yàn)樵跍y試過程中很難覆蓋到所有的可能性,只能是盡量提供更多的測試數(shù)據(jù)來達(dá)到較高的覆蓋率。
3、掃描程序中的數(shù)據(jù)
app安全測試,也就是在運(yùn)行時(shí)需要保證數(shù)據(jù)不能被破壞,必須是安全的,不然就遭受緩沖區(qū)溢出的攻擊。數(shù)據(jù)掃描主要是對內(nèi)存進(jìn)行測試,盡可能的多發(fā)現(xiàn)諸如緩沖區(qū)溢出之類的漏洞,這也是靜態(tài)代碼檢查和動態(tài)滲透測試很難測試到的。