1.一種檢測HTTP參數(shù)污染漏洞的方法,其特征在于:所述檢測HTTP參數(shù)污染漏洞的方法包括:
步驟一:網(wǎng)頁爬行模塊抓取HTTP協(xié)議的web頁面;
步驟二:HTML解析模塊對網(wǎng)頁爬行模塊抓取的web頁面進(jìn)行解析以獲取web頁面DOM結(jié)構(gòu),以及, HTML解析模塊提取web頁面中所有鏈接和表單內(nèi)的URL及調(diào)用參數(shù);
步驟三:將所述URL及調(diào)用參數(shù)傳遞給頁面響應(yīng)模塊進(jìn)行頁面請求;
步驟四:頁面響應(yīng)模塊利用參數(shù)優(yōu)先級判定算法判斷調(diào)用參數(shù)優(yōu)先級;
步驟五:根據(jù)調(diào)用參數(shù)優(yōu)先級實施漏洞掃描,判定漏洞是否存在參數(shù)污染漏洞。
2.如權(quán)利要求1所述的一種檢測HTTP參數(shù)污染漏洞的方法,其特征在于:所述網(wǎng)頁爬行模塊抓取HTTP協(xié)議的web頁面的方式為:遍歷URL中遵循HTTP協(xié)議的web站點,自動抽取web站點層次結(jié)構(gòu),增加URL鏈接到web層次結(jié)構(gòu)中,從中找到所有含有傳遞參數(shù)的可瀏覽和交互的web頁面。
3.如權(quán)利要求1所述的一種檢測HTTP參數(shù)污染漏洞的方法,其特征在于:所述漏洞掃描的方法為:按照所述調(diào)用參數(shù)傳遞的優(yōu)先級,將經(jīng)過url編碼的測試參數(shù)注入到頁面查詢字符串中已有的參數(shù),檢查響應(yīng)頁面link元素和form元素中的action域和hidden域是否有注入的測試參數(shù),借以判斷是否存在參數(shù)污染漏洞。
4.如權(quán)利要求1所述的一種檢測HTTP參數(shù)污染漏洞的方法,其特征在于:所述參數(shù)優(yōu)先級判定算法為:對同一個調(diào)用參數(shù)進(jìn)行三次不同傳遞值進(jìn)行頁面請求,設(shè)定第一次調(diào)用參數(shù)傳遞值為A,第二次調(diào)用參數(shù)傳遞值為B,第三次調(diào)用參數(shù)傳遞值為A+B;三次頁面請求得到的響應(yīng)頁面分別為P1、P2、P3;通過判斷所述響應(yīng)頁面P1、P2、P3的異同進(jìn)行參數(shù)優(yōu)先級的確定,具體判定為:
當(dāng)響應(yīng)頁面P1與P3相同時,對同名異值參數(shù)優(yōu)先級判定為第一次調(diào)用參數(shù)傳遞值高于第二次調(diào)用參數(shù)傳遞值;
當(dāng)響應(yīng)頁面P2和P3相同時,對同名異值參數(shù)優(yōu)先級判定為第二次調(diào)用參數(shù)傳遞值高于第一次調(diào)用參數(shù)傳遞值;
當(dāng)響應(yīng)頁面P1、P2與P3均不相同時,使用逗號、空格符等字符串連接符將第一次調(diào)用參數(shù)傳遞值與第二次調(diào)用參數(shù)傳遞值連接形成組合調(diào)用參數(shù)傳遞值,然后將組合調(diào)用參數(shù)傳遞值與第三次調(diào)用參數(shù)傳遞值進(jìn)行比較,如相同,則對同名異值參數(shù)優(yōu)先級判定為第一次調(diào)用參數(shù)傳遞值與第二次調(diào)用參數(shù)傳遞值相同;否則說明響應(yīng)頁面P1、P2 、P3中包含動態(tài)信息內(nèi)容,此時,處理響應(yīng)頁面P1、P2 、P3中的動態(tài)信息,重新進(jìn)行參數(shù)優(yōu)先級判定。