給你一個登陸口的網站,滲透測試的基本思路應該有哪些?
登陸接口測試
想一下登陸口的基本按扭會有哪些刚操,登陸按扭闸翅?注冊按鈕?忘記密碼按鈕菊霜?短信驗證碼發(fā)送坚冀?
好,具體測試點思路你已經有了鉴逞,現(xiàn)在圍繞這四個按鈕去想遗菠,每一個按鈕可能存在的漏洞有哪些?
登陸按鈕
1.登陸繞過
2.用戶遍歷
3.暴力破解
4.弱口令
5.多點登陸
注冊按鈕
1.任意用戶注冊
2.批量用戶注冊
3.用戶注冊覆蓋
忘記密碼按鈕
1.任意用戶密碼重置
2.忘記密碼步驟繞過
短信驗證碼發(fā)送
1.短信驗證碼轟炸
2.短信多用戶發(fā)送
3.短信響應包返回
4.短信驗證碼復用
5.短信驗證碼繞過
以上是明面上能看到的按鈕所能做到的測試华蜒,再想想是不是網頁由html、css豁遭、JavaScript組成叭喜,好這時候想到js就有接下來的測試。
JS接口測試
1.敏感信息泄漏:身份證號碼蓖谢、用戶賬號密碼捂蕴、AccessKey&Scretkey
2.接口未授權:接口信息,參數(shù)信息
3.js文件調試:加解密函數(shù)調用
總結
以上的所有漏洞基本上都屬于邏輯漏洞闪幽,再加上owsaptop的漏洞和常見的框架漏洞啥辨,差不多就已經覆蓋百分之九十的測試。
如何修復
一盯腌、圖片驗證碼
- 驗證碼必須要在服務端生成添加雜點干擾項并足夠扭曲以圖片格式返回前端且服務端應第一優(yōu)先級先驗證驗證碼的存在性溉知、正確性、一次性羡铲,其次可對參數(shù)進行正則格式驗證瞳抓、之后對不能驗證參數(shù)進行過濾編碼末患、驗證用戶名和認證因子的匹配性、最后再觸發(fā)相關功能
二玫荣、登錄數(shù)據傳輸
- 采取 HTTPS 加密通道進行數(shù)據傳輸
- 采取有效的加密算法對敏感數(shù)據傳輸進行加密
三、手機和郵箱驗證碼
- 驗證碼要有一定的復雜度大诸,至少 6 位捅厂,驗證碼不能返回前端
- 基于客戶端 session 進行次數(shù)限制,制定合適的鎖定策略
- 進行敏感數(shù)據操作時對比賬號和綁定的手機郵箱是否匹配资柔,做多次驗證
除此之外焙贷。
一個安全的認證機制的建設還應包含以下規(guī)則:
- 用戶提交敏感數(shù)據時,應把驗證碼和注冊 / 登錄信息在同一 http 請求中提交建邓,且服務端應優(yōu)先驗證驗證碼是否正確盈厘,最后再觸發(fā)相關功能
- 永遠不要相信用戶在數(shù)據交互點的輸入數(shù)據,面對用戶數(shù)據輸入官边,應做好相對應的參數(shù)過濾沸手。