0x01:驗(yàn)證碼暴力破解測(cè)試
驗(yàn)證碼機(jī)制主要被用于防止暴力破解恼除、防止DDOS攻擊、識(shí)別用戶(hù)身份等植捎,常見(jiàn)的驗(yàn)證碼主要有圖片驗(yàn)證碼衙解、郵件驗(yàn)證碼、短信驗(yàn)證碼焰枢、滑動(dòng)驗(yàn)證碼和語(yǔ)音驗(yàn)證碼蚓峦。
以短信驗(yàn)證碼為例。短信驗(yàn)證碼大部分情況下是由4~6位數(shù)字組成济锄,如果沒(méi)有對(duì)驗(yàn)證碼的失效時(shí)間和嘗試失敗的次數(shù)做限制暑椰,攻擊者就可以通過(guò)嘗試這個(gè)區(qū)間內(nèi)的所有數(shù)字來(lái)進(jìn)行暴力破解攻擊。
測(cè)試方法:
攻擊者填寫(xiě)任意手機(jī)號(hào)碼進(jìn)行注冊(cè)荐绝,服務(wù)器向攻擊者填寫(xiě)的手機(jī)號(hào)碼發(fā)送短信驗(yàn)證碼一汽,攻擊者設(shè)置驗(yàn)證碼范圍000000-999999、
00000-99999低滩、0000-9999召夹,對(duì)驗(yàn)證碼進(jìn)行暴力破解,通過(guò)返回?cái)?shù)據(jù)包判斷是否破解成功恕沫,然后通過(guò)破解成功的驗(yàn)證碼完成注冊(cè)监憎。
修復(fù)建議:
a.設(shè)置驗(yàn)證碼的失效時(shí)間,建議為180秒婶溯;
b.限制單位時(shí)間內(nèi)驗(yàn)證碼的失敗嘗試次數(shù)鲸阔,如五分鐘內(nèi)連續(xù)失敗5次即鎖定該賬號(hào)15分鐘。
0x02:驗(yàn)證碼重復(fù)使用測(cè)試
在網(wǎng)站的登錄或評(píng)論等頁(yè)面迄委,如果驗(yàn)證碼認(rèn)證成功后沒(méi)有將session及時(shí)清空褐筛,將會(huì)導(dǎo)致驗(yàn)證碼首次認(rèn)證之后可重復(fù)使用。
測(cè)試時(shí)可以抓取攜帶驗(yàn)證碼的數(shù)據(jù)包重復(fù)提交叙身,查看是否提交成功栅贴。
測(cè)試方法:
修復(fù)建議:
針對(duì)驗(yàn)證認(rèn)證次數(shù)問(wèn)題咳燕,建議驗(yàn)證碼在一次認(rèn)證成功后,服務(wù)端清空認(rèn)證成功的session蟀架,這樣
就可以有效防止驗(yàn)證碼一次認(rèn)證反復(fù)使用的問(wèn)題。
0x03:驗(yàn)證碼客戶(hù)端回顯測(cè)試
當(dāng)驗(yàn)證碼在客戶(hù)端生成而非服務(wù)器生成時(shí),就會(huì)造成此類(lèi)問(wèn)題。當(dāng)客戶(hù)端需要和服務(wù)器進(jìn)行交互發(fā)送驗(yàn)證碼時(shí),可借助瀏覽器的工具查看客戶(hù)端與服務(wù)器進(jìn)行交互的詳細(xì)信息世剖。
測(cè)試方法:
攻擊者進(jìn)入找回密碼頁(yè)面,輸入手機(jī)號(hào)與證件號(hào)笤虫,獲取驗(yàn)證碼旁瘫,服務(wù)器會(huì)向手機(jī)發(fā)送驗(yàn)證碼,
通過(guò)瀏覽器工具查看返回包信息琼蚯,如果返回包中包含驗(yàn)證碼酬凳,證明存在此類(lèi)問(wèn)題。
修復(fù)建議:
1遭庶、禁止驗(yàn)證碼本地客戶(hù)端生成宁仔,應(yīng)采用服務(wù)器驗(yàn)證碼生成機(jī)制;
2峦睡、設(shè)置驗(yàn)證碼的時(shí)效性翎苫,如180秒過(guò)期;
3榨了、驗(yàn)證碼應(yīng)隨機(jī)生成煎谍,且使用一次即失效。
0x04:驗(yàn)證碼繞過(guò)測(cè)試
通過(guò)修改前端提交服務(wù)器返回的數(shù)據(jù)龙屉,可以實(shí)現(xiàn)繞過(guò)驗(yàn)證碼呐粘,執(zhí)行我們的請(qǐng)求。
測(cè)試方法:攻擊者進(jìn)入注冊(cè)賬戶(hù)頁(yè)面转捕,輸入任意手機(jī)號(hào)碼事哭,獲取驗(yàn)證碼,在注冊(cè)賬號(hào)頁(yè)面填寫(xiě)
任意驗(yàn)證碼瓜富,提交請(qǐng)求并抓包,使用抓包工具查看并修改返回包信息降盹,轉(zhuǎn)發(fā)返回?cái)?shù)據(jù)包与柑,查看是
否注冊(cè)成功。
修復(fù)建議:建議在服務(wù)端增加驗(yàn)證碼的認(rèn)證機(jī)制蓄坏,對(duì)客戶(hù)端提交的驗(yàn)證碼進(jìn)行二次校驗(yàn)价捧。
0x05:驗(yàn)證碼自動(dòng)識(shí)別測(cè)試
出自來(lái)自web攻防之業(yè)務(wù)安全