1泵琳、Brute Force
低級和中級
主要使用工具是burp摄职,通過burp抓包的手段,對當(dāng)前登錄頁面進(jìn)行抓包获列。首先假設(shè)用戶名為admin谷市,隨意輸入密碼,點擊登錄击孩,之后通過抓包的方式抓取數(shù)據(jù)包迫悠,在包頭的位置標(biāo)注的著我們提交的用戶名和密碼且都為明文,將此數(shù)據(jù)包發(fā)送至intruder模塊巩梢,進(jìn)行爆破创泄。
在低級中還可使用萬能密碼進(jìn)行登錄,admin' or '1'='1 ,其原理為繞過密碼且改,由于代碼本身的漏洞(在源碼中沒有過濾特殊符號)验烧,在傳參時通過admin'中的 ' 將前面的 ' 進(jìn)行閉合板驳,同時在驗證時1=1永遠(yuǎn)為真又跛,根據(jù)優(yōu)先級最后執(zhí)行or,有一方為真即可若治,所以無需輸入密碼也可以通過密碼驗證慨蓝。
高級
高級源碼
通過審計代碼,發(fā)現(xiàn)其在驗證時會驗證用戶的token端幼,通過抓包會發(fā)現(xiàn)包頭中有username礼烈、password、Login以及user_token四個參數(shù)婆跑。
數(shù)據(jù)包發(fā)送到intruder
首先清除變量clear此熬,隨后對password、user_token的值添加變量add,將攻擊模式選成pitchfork犀忱;進(jìn)入options模塊募谎,配置grep-extract,找到value值阴汇,選中后如下圖
選中value
將redirections選成always数冬。
隨后進(jìn)行最重要一步,設(shè)置線程搀庶,此處有坑拐纱,burp高版本設(shè)置線程不在options中,在resource pool中哥倔,新建一個pool秸架,進(jìn)行設(shè)置如圖
設(shè)置線程數(shù)為1
最后對payload進(jìn)行設(shè)置
set1
設(shè)置set2,type選中recursive grep 在下方將token值填上未斑,可以開始攻擊了咕宿。
通過比較返回包的大小確定出正確密碼