第三方安全測試是在IT企業(yè)軟件產(chǎn)品的生命周期中,特別是產(chǎn)品開發(fā)基本完成到發(fā)布階段,對產(chǎn)品進(jìn)行檢驗以驗證產(chǎn)品符合安全需求定義和產(chǎn)品質(zhì)量標(biāo)準(zhǔn)的過程。
軟件安全測試服務(wù)詳情
web信息系統(tǒng)安全漏洞測試是指有關(guān)驗證應(yīng)用程序的安全等級和識別潛在安全性缺陷的過程,主要是測試應(yīng)用程序?qū)拥陌踩?,包括兩個層面:
一是應(yīng)用程序本身的安全性
一般來說,應(yīng)用程序的安全問題主要是由軟件漏洞導(dǎo)致的,這些漏洞可以是設(shè)計上的缺陷或是編程上的問題,甚至是企業(yè)開發(fā)人員預(yù)留的后門;
二是應(yīng)用程序的數(shù)據(jù)安全
包括數(shù)據(jù)存儲安全和數(shù)據(jù)傳輸安全兩個方面。
一般來說,對安全性要求不高的軟件,其安全性測試可以混在單元測試、集成測試、系統(tǒng)測試?yán)镆黄鹱?。但對安全性有較高需求的軟件,則必須做專門的安全測試,以便在破壞之前預(yù)防并識別軟件的安全問題。主要目的是查找軟件自身程序設(shè)計中存在的安全隱患,并檢查應(yīng)用程序?qū)Ψ欠ㄇ秩氲姆婪赌芰? 根據(jù)安全指標(biāo)不同測試策略也不同。
軟件安全測試服務(wù)價值
web信息系統(tǒng)安全測試是用來驗證集成在軟件內(nèi)的保護(hù)機(jī)制是否能夠在實際中保護(hù)系統(tǒng)免受非法的侵入。通俗的說:軟件系統(tǒng)的安全當(dāng)然必須能夠經(jīng)受住正面的攻擊——但是它也必須能夠經(jīng)受住側(cè)面的和背后的攻擊,才能保證企業(yè)的安全運(yùn)行,軟件安全測試報告規(guī)避企業(yè)的安全風(fēng)險,保證企業(yè)立于不敗之地。

白盒測試
對軟件源代碼進(jìn)行掃描,檢測軟件源代碼中存在的漏洞;提供全面的數(shù)據(jù)流分析,定位存在漏洞代碼段及其路徑,找出外部輸入能影響到的易損函數(shù)。例如:SQL Injections、Cross-Site Scripting等漏洞。
黑盒測試
對正在運(yùn)行的B/S架構(gòu)的系統(tǒng)進(jìn)行動態(tài)的滲透性測試,檢測B/S架構(gòu)系統(tǒng)的特定功能點(diǎn)是否存在漏洞,并收集系統(tǒng)泄露的各種信息。例如:HTTP Response Splitting、System Information Leak、Privacy Violation等漏洞。
測試工具:Fortify Source Code Analysis Engine、Fortify Security Tester
代碼審計(軟件源代碼安全審查)
(以發(fā)現(xiàn)程序錯誤,安全漏洞和違反程序規(guī)范為目標(biāo)的源代碼分析)。
1.密碼管理(包括各種常用的加密方式的審查)。
2.跨站腳本(利用http協(xié)議的特點(diǎn),跨站腳本的可能攻擊漏洞)。
3.資源管理(數(shù)據(jù)權(quán)限,功能權(quán)限的審查)。
4.配置管理(session,錯誤頁面)。
5.檢測工具使用(使用Checkstyle進(jìn)行缺陷模式匹配、FindBugs 缺陷模式匹配及數(shù)據(jù)流分析、使用PMD 缺陷模式匹配,F(xiàn)indSecurityBugs,fortify)。
6.代碼質(zhì)量的審查。
滲透測試
(選擇不影響業(yè)務(wù)系統(tǒng)正常運(yùn)行的模擬攻擊方法,對主機(jī)操作系統(tǒng)、數(shù)據(jù)庫系統(tǒng)、應(yīng)用系統(tǒng)、網(wǎng)絡(luò)設(shè)備進(jìn)行滲透測試,評估計算機(jī)網(wǎng)絡(luò)系統(tǒng)安全)。
1.權(quán)限管理測試(包括橫向越權(quán)測試、縱向越權(quán)測試、使用kali社會工程學(xué)工具包實施測試等)。
2.文件、目錄測試(包括目錄列表測試、文件歸檔測試等)。
3.身份認(rèn)證測試(包括:使用Burp Suite對網(wǎng)絡(luò)認(rèn)證服務(wù)的攻擊、哈希密碼破解、密碼字典破解等內(nèi)容)。
4.會話管理測試(包括:身份信息維護(hù)方式測試、Cookie存儲方式測試、用戶注銷登錄方式測試、注銷時會話信息是否清除測試、會話超時測試等)。
5.文件上傳、下載測試(包括文件上傳測試、下載測試等內(nèi)容)。
6.信息泄露測試(借助wireshark\fiddler等工具嗅探敏感數(shù)據(jù)是否泄露)。
7.SQL注入測試(包括:手動SQL注入和借助Sqlmap工具注入等內(nèi)容)。
8.XSS攻擊(包括:XSS漏洞掃描、存儲型XSS、DOM型XSS、BeFF-XSS滲透測試框架、BeFF-XSS與Metasploit協(xié)同工作等內(nèi)容)。
9.CSRF攻擊(包括:CSRF漏洞掃描、利用條件、檢測方法和對策等內(nèi)容)。
10.WebShell(包括:WebShell檢測方法及對策)。
11.無線安全滲透測試(包括無線網(wǎng)絡(luò)嗅探、使用Aircrack-NG工具破解無線網(wǎng)絡(luò)、使用Arpspoof實施arp攻擊等)。
12.其他滲透測試(包括:邏輯測試,html5安全測試,日志審計,class文件反編譯測試,Struts2框架測試等)。
安全漏洞掃描
(提供包括網(wǎng)絡(luò)設(shè)備、操作系統(tǒng)、數(shù)據(jù)庫、常見應(yīng)用服務(wù)器以及WEB應(yīng)用等范圍的掃描掃描)。
1.AppScan掃描掃描測試(首先利用AppScan對Web應(yīng)用和服務(wù)器進(jìn)行全面掃描掃描,發(fā)現(xiàn)部分漏洞和問題)。
2.使用Nessus/OpenVAS進(jìn)行漏洞掃描(包括:掃描本地漏洞掃描、網(wǎng)絡(luò)漏洞掃描、掃描指定Linux的系統(tǒng)漏洞掃描、掃描指定Windows的系統(tǒng)漏洞掃描等內(nèi)容)。
移動APP安全檢測
(包括對移動APP產(chǎn)品進(jìn)行的代碼審計、配置驗證、人工驗證)。
APP安全檢測要點(diǎn)
1、Allowbackup漏洞掃描
2、WebView漏洞掃描
3、關(guān)鍵數(shù)據(jù)明文傳輸
4、任意賬號注冊
5、登錄界面可被釣魚劫持

軟件安全測試工具
主要包括:包括:nmap、Sqlmap、Nessus、Appscan、Metasploit、Burp Suite、Aircrack-ng、wireshark\fiddler、Checkstyle,F(xiàn)indBugs,PMD,F(xiàn)indSecurityBugs,fortify等。
1.AppScan掃描測試(首先利用AppScan對Web應(yīng)用和服務(wù)器進(jìn)行全面掃描,發(fā)現(xiàn)部分漏洞和問題)。
2.代碼審計(使用Checkstyle進(jìn)行缺陷模式匹配、FindBugs缺陷模式匹配及數(shù)據(jù)流分析、使用PMD 缺陷模式匹配,F(xiàn)indSecurityBugs,fortify)。
3.信息收集(使用Nmap、Recon-NG等工具收集Web應(yīng)用、服務(wù)器、網(wǎng)絡(luò)的信息,包括:運(yùn)行賬號權(quán)限測試、服務(wù)端口掃描、HTTP方法測試、網(wǎng)絡(luò)范圍測試、服務(wù)器其他信息收集等)。
4.使用Nessus/OpenVAS進(jìn)行漏洞掃描(包括:掃描本地漏洞、網(wǎng)絡(luò)漏洞、掃描指定Linux的系統(tǒng)漏洞、掃描指定Windows的系統(tǒng)漏洞等內(nèi)容)。
5.使用Metasploit發(fā)起滲透攻擊(包括:對操作系統(tǒng)的攻擊、對Web應(yīng)用程序攻擊、對mysql數(shù)據(jù)庫的攻擊等)。
安全測試過程說明
保密性
應(yīng)提供訪問控制功能,依據(jù)安全策略控制用戶對文件、數(shù)據(jù)庫表等客體的訪問。
訪問控制的覆蓋范圍應(yīng)包括與資源訪問相關(guān)的主體、客體及它們之間的操作。
應(yīng)由授權(quán)主體配置訪問控制策略,并嚴(yán)格限制默認(rèn)帳戶的訪問權(quán)限。
應(yīng)授予不同帳戶為完成各自承擔(dān)任務(wù)所需的最小權(quán)限,并在它們之間形成相互制約的關(guān)系。
在通信雙方建立連接之前,應(yīng)用系統(tǒng)應(yīng)利用密碼技術(shù)進(jìn)行會話初始化驗證。
應(yīng)對通信過程中的敏感信息字段進(jìn)行加密。
完整性
應(yīng)采用校驗碼技術(shù)保證通信過程中數(shù)據(jù)的完整性。
應(yīng)提供數(shù)據(jù)有效性檢驗功能,保證通過人機(jī)接口輸入或通過通信接口輸入的數(shù)據(jù)格式或長度符合系統(tǒng)設(shè)定要求。
在故障發(fā)生時,應(yīng)用系統(tǒng)應(yīng)能夠繼續(xù)提供一部分功能,確保能夠?qū)嵤┍匾拇胧?/p>
抗抵賴性
應(yīng)提供覆蓋到每個用戶的安全審計功能,對應(yīng)用系統(tǒng)重要安全事件進(jìn)行審計。
應(yīng)保證無法刪除、修改或覆蓋審計記錄。
可核查性
審計記錄的內(nèi)容至少應(yīng)包括事件日期、時間、發(fā)起者信息、類型、描述和結(jié)果等。
真實性
應(yīng)提供專用的登錄控制模塊對登錄用戶進(jìn)行身份標(biāo)識和鑒別。
應(yīng)提供用戶身份標(biāo)識唯一和鑒別信息復(fù)雜度檢查功能,保證應(yīng)用系統(tǒng)中不存在重復(fù)用戶身份標(biāo)識,身份鑒別信息不易被冒用。
應(yīng)提供登錄失敗處理功能,可采取結(jié)束會話、限制非法登錄次數(shù)和自動退出等措施。
應(yīng)啟用身份鑒別、用戶身份標(biāo)識唯一性檢查、用戶身份鑒別信息復(fù)雜度檢查以及登錄失敗處理功能,并根據(jù)安全策略配置相關(guān)參數(shù)。
用戶鑒別
軟件應(yīng)具備身份鑒別機(jī)制檢測(用戶使用軟件過程中是否需要輸入用戶名和口令)
檢測是否具備鑒別失敗處理機(jī)制
檢測是否存在口令或賬戶登錄錯誤提示混淆
軟件容錯
檢測軟件應(yīng)對異常輸入操作進(jìn)行有效處理
組件安全
軟件調(diào)用Activity組件的過程中,應(yīng)確保無法進(jìn)行權(quán)限攻擊或劫持
軟件調(diào)用Broadcast Receiver組件的過程中,應(yīng)確保無法進(jìn)行監(jiān)聽或劫持
軟件調(diào)用Content Provider組件的過程中,應(yīng)確保無法進(jìn)行權(quán)限攻擊
軟件調(diào)用Intent組件的過程中,應(yīng)確保無法進(jìn)行權(quán)限攻擊
API安全
檢測軟件調(diào)用的API應(yīng)不包含已知可被利用的漏洞
權(quán)限管理
檢測軟件軟件應(yīng)確保權(quán)限最小化
數(shù)據(jù)輸入
檢測隱私數(shù)據(jù)輸入時是否明文顯示
數(shù)據(jù)輸出
檢測軟件軟件的隱私數(shù)據(jù)顯示應(yīng)是安全的(隱私信息進(jìn)行顯示時(口令、身份證等),是否進(jìn)行屏蔽)
數(shù)據(jù)存儲
檢測軟件記錄的隱私信息是否加密處理
檢測數(shù)據(jù)存儲位置是否安全
接口安全
軟件與服務(wù)器通信時,隱私數(shù)據(jù)應(yīng)加密
商務(wù)流程
1.業(yè)務(wù)受理:達(dá)成合作意向,確認(rèn)需求,合同簽訂;
2.測試準(zhǔn)備:需求分析,環(huán)境準(zhǔn)備,資源調(diào)配;
3.測試設(shè)計:計劃方案,用例設(shè)計,工具準(zhǔn)備;
4.測試執(zhí)行:環(huán)境核查,原始記錄,回歸測試;
5.報告發(fā)布:測試報告起草,報告評審,發(fā)布。
