現(xiàn)如今互聯(lián)網(wǎng)高度發(fā)達(dá),智能化的軟件成為商業(yè)決策、推廣等不可缺少的利器,很多軟件涉及了客戶商業(yè)上重要的信息資料,因此企業(yè)都很關(guān)心軟件的安全性。往往一個細(xì)小的安全漏洞,對客戶產(chǎn)生的影響都是巨大的。所以企業(yè)都想著盡可能的保證軟件的安全性,確保軟件在安全性方面能滿足客戶期望,在軟件測試行業(yè),安全測試的重要性是不言而喻的。
一、什么是軟件安全性測試 ?
安全性測試是指有關(guān)驗(yàn)證應(yīng)用程序的安全等級和識別潛在安全性缺陷的過程。應(yīng)用程序級安全測試的主要目的是查找軟件自身程序設(shè)計(jì)中存在的安全隱患,并檢查應(yīng)用程序?qū)Ψ欠ㄇ秩氲姆婪赌芰?,根?jù)安全指標(biāo)不同測試策略也不同。
二、軟件安全測試的測試手段
1、代碼安全測試:
主要通過對源代碼進(jìn)行安全掃描,根據(jù)程序中數(shù)據(jù)流、控制流、語義等信息與其特有軟件安全規(guī)則庫進(jìn)行匹對,從中找出代碼中潛在的安全漏洞。靜態(tài)的源代碼安全測試是非常有用的方法,它可以在編碼階段找出所有可能存在安全風(fēng)險的代碼,這樣開發(fā)人員可以在早期解決潛在的安全問題。而正因?yàn)槿绱?,靜態(tài)代碼測試比較適用于早期的代碼開發(fā)階段,而不是測試階段。
2、滲透測試:
是使用自動化工具或者人工的方法模擬黑客的輸入,對應(yīng)用系統(tǒng)進(jìn)行攻擊性測試,從中找出運(yùn)行時刻所存在的安全漏洞。這種測試的特點(diǎn)是真實(shí)有效,一般找出來的問題都是正確的,也是較為嚴(yán)重的。但滲透測試一個致命的缺點(diǎn)是模擬的測試數(shù)據(jù)只能到達(dá)有限的測試點(diǎn),覆蓋率很低。
3、程序數(shù)據(jù)掃描:
一個有高安全性需求的軟件,在運(yùn)行過程中數(shù)據(jù)是不能遭到破壞的,否則會導(dǎo)致緩沖區(qū)溢出類型的攻擊。數(shù)據(jù)掃描的手段通常是進(jìn)行內(nèi)存測試,內(nèi)存測試可以發(fā)現(xiàn)許多諸如緩沖區(qū)溢出之類的漏洞,而這類漏洞使用除此之外的測試手段都難以發(fā)現(xiàn)。例如,對軟件運(yùn)行時的內(nèi)存信息進(jìn)行掃描,看是否存在一些導(dǎo)致隱患的信息,當(dāng)然這需要專門的工具來進(jìn)行驗(yàn)證。
4、功能驗(yàn)證
功能驗(yàn)證是采用軟件測試當(dāng)中的黑盒測試方法,對涉及安全的軟件功能,如:用戶管理模塊,權(quán)限管理模塊,加密系統(tǒng),認(rèn)證系統(tǒng)等進(jìn)行測試,主要驗(yàn)證上述功能是否有效,具體方法可使用黑盒測試方法。
5、偵聽技術(shù)
偵聽技術(shù)實(shí)際上是在數(shù)據(jù)通信或數(shù)據(jù)交互過程,對數(shù)據(jù)進(jìn)行截取分析的過程。目前最為流行的是網(wǎng)絡(luò)數(shù)據(jù)包的捕獲技術(shù),通常我們稱為 Capture,黑客可以利用該項(xiàng)技術(shù)實(shí)現(xiàn)數(shù)據(jù)的盜用,而測試人員同樣可以利用該項(xiàng)技術(shù)實(shí)現(xiàn)安全測試。
審核編輯黃宇
-
測試
+關(guān)注
關(guān)注
8文章
5694瀏覽量
128817 -
軟件安全
+關(guān)注
關(guān)注
0文章
26瀏覽量
9312
發(fā)布評論請先 登錄
淺談驅(qū)動板的軟件測試
絕緣電阻測試:電氣安全的關(guān)鍵防線

絕緣電阻測試和絕緣耐壓測試有什么不同

IGBT雙脈沖測試原理和步驟
電池的安全性測試項(xiàng)目有哪些?

如何利用emulation提升軟件測試效率
CP測試和WAT測試有什么區(qū)別

設(shè)計(jì)仿真 基于VTD的AR-HUD仿真測試解決方案

評論