什么是安全測試?
安全測試就是要提供證據(jù)表明,在面對敵意和惡意輸入的時候,應(yīng)用仍然能夠充分的滿足它的需求。
a.如何提供證據(jù)?我們通過一組失敗的安全測試用例執(zhí)行結(jié)果來證明web應(yīng)用不滿足安全需求。
b.如何看待安全測試的需求?與功能測試相比,安全測試更加依賴于需求,因為它有更多可能的輸入和輸出可供篩選。
真正的軟件安全其實(shí)際上指的是風(fēng)險管理,即我們確保軟件的安全程度滿足業(yè)務(wù)需要即可。
如何開展安全測試?
基于常見攻擊和漏洞并結(jié)合實(shí)際添加安全測試用例,就是如何將安全測試變?yōu)槿粘9δ軠y試中簡單和普通的一部分的方法。
選擇具有安全意義的特殊邊界值,以及具有安全意義的特殊等價類,并將這些融入到我們的測試規(guī)劃和測試策略過程中。
但是若在功能測試基礎(chǔ)上進(jìn)行安全測試,則需要增加大量測試用例。這意味著必須做兩件事來使其便于管理:縮小關(guān)注的重點(diǎn)和測試自動化。
Web安全測試通常要考慮的測試點(diǎn)?
1、問題:沒有被驗證的輸入
測試方法:
數(shù)據(jù)類型(字符串,整型,實(shí)數(shù),等)
允許的字符集
最小和最大的長度
是否允許空輸入
參數(shù)是否是必須的
重復(fù)是否允許
數(shù)值范圍
特定的值(枚舉型)
特定的模式(正則表達(dá)式)
2、問題:有問題的訪問控制
測試方法:
主要用于需要驗證用戶身份以及權(quán)限的頁面,復(fù)制該頁面的url地址,關(guān)閉該頁面以后,查看是否可以直接進(jìn)入該復(fù)制好的地址
例:從一個頁面鏈到另一個頁面的間隙可以看到URL地址,直接輸入該地址,可以看到自己沒有權(quán)限的頁面信息
3、錯誤的認(rèn)證和會話管理
例:對Grid、Label、Tree view類的輸入框未作驗證,輸入的內(nèi)容會按照html語法解析出來
4、緩沖區(qū)溢出
沒有加密關(guān)鍵數(shù)據(jù)
例:view-source:http地址可以查看源代碼,在頁面輸入密碼,頁面顯示的是 *****, 右鍵,查看源文件就可以看見剛才輸入的密碼
5、拒絕服務(wù)
分析:攻擊者可以從一個主機(jī)產(chǎn)生足夠多的流量來耗盡狠多應(yīng)用程序,最終使程序陷入癱瘓,需要做負(fù)載均衡來對付
6、不安全的配置管理
分析:Config中的鏈接字符串以及用戶信息,郵件,數(shù)據(jù)存儲信息都需要加以保護(hù)。
程序員應(yīng)該做的:配置所有的安全機(jī)制,關(guān)掉所有不使用的服務(wù),設(shè)置角色權(quán)限帳號,使用日志和警報
分析:用戶使用緩沖區(qū)溢出來破壞web應(yīng)用程序的棧,通過發(fā)送特別編寫的代碼到web程序中,攻擊者可以讓web應(yīng)用程序來執(zhí)行任意代碼
7、注入式漏洞
例:一個驗證用戶登陸的頁面,
如果使用的sql語句為:
Select * from table A where username=’’ + username+’’ and pass word …..
Sql 輸入 ‘ or 1=1 ―― 就可以不輸入任何password進(jìn)行攻擊
8、不恰當(dāng)?shù)漠惓L幚?/p>
分析:程序在拋出異常的時候給出了比較詳細(xì)的內(nèi)部錯誤信息,暴露了不應(yīng)該顯示的執(zhí)行細(xì)節(jié),網(wǎng)站存在潛在漏洞
9、不安全的存儲
分析:帳號列表,系統(tǒng)不應(yīng)該允許用戶瀏覽到網(wǎng)站所有的帳號,如果必須要一個用戶列表,推薦使用某種形式的假名(屏幕名)來指向?qū)嶋H的帳號。
瀏覽器緩存:認(rèn)證和會話數(shù)據(jù)不應(yīng)該作為GET的一部分來發(fā)送,應(yīng)該使用POST
10、問題:跨站腳本(XSS)
分析:攻擊者使用跨站腳本來發(fā)送惡意代碼給沒有發(fā)覺的用戶,竊取他機(jī)器上的任意資料
測試方法:
HTML標(biāo)簽:……>
轉(zhuǎn)義字符:&(&);(>); (空格) ;
腳本語言:
…Alert(‘’)
特殊字符:‘ ’ /
最小和最大的長度
是否允許空輸入

每個人都需要一臺速度更快、更穩(wěn)定的 PC。隨著時間的推移,垃圾文件、舊注冊表數(shù)據(jù)和不必要的后臺進(jìn)程會占用資源并降低性能。幸運(yùn)的是,許多工具可以讓 Windows 保持平穩(wěn)運(yùn)行。

-
2025-03-31 15:20:26
-
2025-03-31 14:20:13
-
2025-03-31 14:15:37
-
2025-03-31 13:30:37
-
2025-03-31 13:00:30
-
2025-03-31 11:06:18
-
2025-03-31 11:00:39
-
2025-03-31 10:45:40
-
2025-03-31 10:40:04
-
2025-03-31 10:15:28