安全測試通用用例


閱讀需知

這是總結的是一些通用安全測試用例,但安全測試遠不如此,這些用例只能算入門!!

漏洞掃描

定義:對系統的URL進行漏洞掃描,掃描系統開放的端口、服務和存在的漏洞

前置條件 步驟 結果
我們公司用綠盟掃描器 登錄掃描器進行WEB掃描  
  在漏洞掃描中選擇WEB掃描,輸入待掃描的URL地址 查看掃描報告是否有漏洞,其中高風險和中風險漏洞需要修復
  查看掃描報告是否有漏洞,其中高風險和中風險漏洞需要修復

1、確認高風險和中風險漏洞都修復完成

2、修復風險后需注意不要影響系統原先功能的正常性,建議做影響范圍的功能回歸測試,保證系統正常

定期檢查 同一個URL,3個月內掃描一次  

明文傳輸

定義:對系統傳輸過程中的敏感內容是明文&密文進行檢查

系統傳輸敏感信息場景:登錄、注冊、支付、修改密碼

系統敏感信息:登錄密碼、支付金額、注冊的手機號碼、身份證、郵箱等信息

步驟 結果
對傳輸敏感信息場景進行抓包  
分析其數據包中的相關敏感字段是否為明文 分析其數據包中的相關敏感字段是否為明文

越權訪問

定義:測試能否通過URL地址獲取管理員及其他用戶信息

1、出現admin、user、system、pwd等敏感目錄的URL地址

如:https://walmon-competition.gz.cvte.cn/competition_api/admin/v1/user/role_user_unit

2、垂直越權場景:當系統存在多個不同權限的管理員時,低權限的管理員不能訪問或操作到高權限的管理的資源

3、水平越權場景:當系統存在多個需要登錄用戶,A用戶不能訪問B用戶的資源

步驟
檢查URL是否存在admin/user/system/pwd等敏感目錄

垂直越權:

1.使用高權限的管理員登錄后,訪問一些他獨有的資源,或者進行一些特權操作,記錄下接口信息

2.退出登錄后,使用低權限用戶登錄,重新執行步驟1記錄下來的接口,查看是否能夠操作成功

水平越權:

1. 使用A用戶登錄后,打開A用戶所獨有的個人資源的URL或者進行一些修改操作,記錄下接口信息

2. 退出登錄后,使用B用戶登錄,重新執行步驟1記錄下的接口,看是否能夠訪問或者操作成功。

反射性跨站腳本

定義:測試系統是否對輸入進行過濾或轉移,規避用戶通過跨站腳本攻擊造成風險

跨站腳本攻擊場景:搜索框、輸入框、留言、上傳文件

步驟 結果

在系統的URL地址后面,輸入測試語句:

<img src=x onerror=alert(1)>

<script>alert("1") </script>;

是否會有彈窗

在系統的搜索框、輸入框、留言,輸入測試語句:

同上

像留言、評論、公告等輸入內容都會存到數據庫

前端查看對應內容時是否會有彈窗

在上傳文件功能中,往需要導入的文件中輸入測試語句:

同上

 

文件上傳

定義:測試能否上傳木馬、病毒、色情圖片等惡意圖片

步驟 結果

生成一個測試的惡意文件,如一個txt文檔,內容為<img src=x onerror=alert(1)>

文件名字最好為英文,如test

 

點擊上傳功能,抓包攔截上傳接口,將上傳的文件后綴修改為html文件(訪問該html文件)

可正常執行惡意語句,則有錯

越權文件下載

定義:測試URL中是否包含文件名或文件目錄,嘗試提交參數值查看是否可下載或讀取其他目錄的文件內容

文件下載場景:文件下載、文件讀取功能

測試url:包含文件名或文件目錄的url

步驟 結果

進行文件下載操作,找到文件下載路徑

http://www.example.com/donwload.jsp?filename=test12789.pdf

 

修改下載路徑中的文件參數值,檢查訪問效果

http://www.exbugmpjsp?filename=test.pdf

如果可以下載修改后的文件,則證明存在漏洞

修改下載路徑,通過../對路徑進行跳轉嘗試下載其他目錄下的文件

http://www.example.com/donwload.jsp?filename=../../WEB-INF/web.xml

 如果可以下載web.xm文件,則有bug

短信/郵箱驗證

定義:測試短信、郵箱驗證方式是否進行安全設置

觸發短信、郵箱驗證碼驗證相關的場景:找回或重置密碼、注冊、邀請注冊、引流活動分享 

步驟 結果

操作密碼重置、找回密碼等功能,觸發跳轉到輸入手機號或郵箱的頁面

 

輸入測試手機號或郵箱,看能否一直連續無間隔 發送短信驗證碼,造成短信轟炸

短信轟炸若存在,及證明存在該漏洞,報BUG 觸發短信、郵件發送的前提必須有安全驗證(驗證碼、滑動驗證等),防止短信被刷

如果有對應的驗證設置,輸入手機號、郵箱,同步開始抓包,查看數據包能否抓取到發送的驗證碼信息

如果可以抓取到,則驗證碼可以被修改,存在漏洞,報BUG

鑒權缺失

定義:測試需要登錄、鑒權才可操作的系統中可修改資源的相關接口,鑒權是否可靠

測試對象:可以修改資源的接口

步驟 結果

定義:測試需要登錄、鑒權才可操作的系統中可修改資源的相關接口,鑒權是否可靠 測試對象:可以修改資源的接口

 1、如果參數都是完全可以被預期的話。即除了鑒權的cookie 外,header中和body表單中的所有參數都可以被事先知道。那么表明存在漏洞。報BUG 2、如果header或者body中有隨機的token或者需要驗證碼之類的,則不存在漏洞

抓包、分析接口的參數,觀察鑒權參數,如cookie 或者access token等 

1、如果觀察cookie 或者access token,可掌握其規律,如為某固定單一不變的值或使用用戶ID作為cookie 的值,會話控制信息可以被猜測,鑒權不可靠,表明存在漏洞。報BUG

密碼健壯性

定義:測試密碼、驗證碼驗證的方式是否可靠,是否可以被暴力猜測直至命中

步驟 結果

操作輸入密碼、驗證碼的場景,使用抓包工具,修改接口中的密碼、驗證碼,多次嘗試輸入錯誤的驗證碼

 可以被暴力猜測直至命中,則存在漏洞

使用工具重復請求接口(類似登錄接口)多次(密碼錯誤、驗證碼錯誤情況下、100次以上

使用工具重復請求接口(類似登錄接口)多次(密碼錯誤、驗證碼錯誤情況下、100次以上

檢查密碼設置、驗證碼生成的業務邏輯設計

1、若設置密碼時就未考慮密碼復雜程度,允許用戶設置弱密碼

(如設置賬號必須滿足數字+字母+特殊字符,8位以上。規避123456、aaaaaaa、qwerty等弱密碼),用戶賬號安全可能存在漏洞,可反饋給研發進行整改,推進賬號安全

2、若驗證碼生成邏輯簡單,或者結果集合小,或為簡單的圖片驗證,則可能存在漏洞,可反饋開發進行整改,盡量使用更安全的驗證設計(如行為驗證 )

對密碼找回及修改密碼功能,檢查密碼是否有權限管控,只能修改或設置自己的密碼,規避通過該功能修改別人的密碼

若可通過密碼找回、修改密碼、賬號申訴等功能,修改其他人的賬號密碼,則存在漏洞,報BUG

數據安全

定義:檢查系統中敏感數據的存儲是否安全

敏感數據:密碼、身份證、家庭住址、銀行卡號、手機號、真實姓名

步驟

檢查敏感數據是否加密存儲,檢查對應的數據表(mysql、redis)數據記錄,防止拖庫后信息泄露

檢查敏感數據在操作界面展示上是否脫敏 如:密碼顯示隱藏選項,手機號、身份證僅顯示首尾等134****4250,220**********2129

檢查數字設置安全,是否限制輸入負數或超大數額


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM