漏洞挖掘 | 弱口令漏洞

弱口令漏洞

漏洞描述

應用存在默認口令或口令較簡單易被猜到。git

風險等級

安全

漏洞測試

使用常見的弱口令字典進行嘗試登錄。通常採用BurpSuite進行測試。在這裏咱們用DVWA進行演示(DVWA不會搭建的請自行百度)。服務器

首先登錄進入DVWA後,修改安全等級:
修改DVWA安全等級多線程

而後在Brute Force模塊進行測試弱口令:
Brute Force模塊工具

使用 BrupSuite 進行抓包:
發現帳戶和密碼是使用GET方式提交的,而後咱們右鍵將抓到的包發送到 Intruder 模塊進行暴力破解:
抓包發送到Intruder模塊測試

進入到Intruder模塊後,發現有四種攻擊方式可選擇:
四種攻擊模式ui

如今咱們來分別介紹一下四種攻擊模式:url

狙擊手模式(Sniper)——它使用一組Payload集合,依次替換Payload位置上(一次攻擊只能使用一個Payload位置)被§標誌的文本(而沒有被§標誌的文本將不受影響),對服務器端進行請求,一般用於測試請求參數是否存在漏洞。
攻城錘模式(Battering ram)——它使用單一的Payload集合,依次替換Payload位置上被§標誌的文本(而沒有被§標誌的文本將不受影響),對服務器端進行請求,與狙擊手模式的區別在於,若是有多個參數且都爲Payload位置標誌時,使用的Payload值是相同的,而狙擊手模式只能使用一個Payload位置標誌。
草叉模式(Pitchfork )——它可使用多組Payload集合,在每個不一樣的Payload標誌位置上(最多20個),遍歷全部的Payload。舉例來講,若是有兩個Payload標誌位置,第一個Payload值爲A和B,第二個Payload值爲C和D,則發起攻擊時,將共發起兩次攻擊,第一次使用的Payload分別爲A和C,第二次使用的Payload分別爲B和D。
集束炸彈模式(Cluster bomb)——它可使用多組Payload集合,在每個不一樣的Payload標誌位置上(最多20個),依次遍歷全部的Payload。它與草叉模式的主要區別在於,執行的Payload數據Payload組的乘積。舉例來講,若是有兩個Payload標誌位置,第一個Payload值爲A和B,第二個Payload值爲C和D,則發起攻擊時,將共發起四次攻擊,第一次使用的Payload分別爲A和C,第二次使用的Payload分別爲A和D,第三次使用的Payload分別爲B和C,第四次使用的Payload分別爲B和D。
線程

如今咱們使用集束炸彈模式(第四種)進行測試:
點擊 clear 將全部參數置爲未選中,而後將 usernamepassword 選中,設置完畢後點擊 payloads 開始設置攻擊載荷:
選擇特定參數
設置攻擊載荷3d

開始攻擊,經過查看返回包的Length可判斷是否爆破成功,在這裏咱們發現admin/admin與其餘返回長度不一樣:
爆破

而後咱們在登陸頁面使用admin/admin進行嘗試登陸:
登錄成功

成功進行登陸。

漏洞危害

攻擊者利用弱口令,能夠獲取特定帳戶或應用的訪問控制權限,若是進一步攻擊利用可能獲取到服務器權限。

加固建議

關於如何防止弱口令的一些方法:

  1. 不使用空口令或系統缺省的口令,由於這些口令衆所周之,爲典型的弱口令。
  2. 口令長度不小於8個字符。
  3. 口令不該該爲連續的某個字符(例如:AAAAAAAA)或重複某些字符的組合。
  4. 口令應該爲如下四類字符的組合,大寫字母(A-Z)、小寫字母(a-z)、數字(0-9)和特殊字符。每類字符至少包含一個。若是某類字符只包含一個,那麼該字符不該爲首字符或尾字符。
  5. 口令中不該包含本人、父母、子女和配偶的姓名和出生日期、記念日期、登陸名、E-mail地址等等與本人有關的信息,以及字典中的單詞。
  6. 口令不該該爲用數字或符號代替某些字母的單詞。
  7. 口令應該易記且能夠快速輸入,防止他人從你身後很容易看到你的輸入。
  8. 至少90天內更換一次口令,防止未被發現的入侵者繼續使用該口令。

關於如何防止暴力攻擊的一些方法:

  1. 限制驗證次數,或者設置較長的密碼和各類組合,延長暴力破解的時間。
  2. 儘量的使密碼足夠的複雜,密碼的長度要大於8位。
  3. 發現同一IP錯誤登陸次數過多時,強制使用人臉識別技術,肯定是否爲本人操做。
  4. 若是錯誤次數超過五次或者十次以上,那麼就採用驗證碼登陸,或者使用短信驗證,天天驗證次數不超過20次。
  5. 能夠添加延遲(如:sleep(2))來延長暴力破解的時間,這樣能夠減緩一些單線程攻擊,但對多線程攻擊則效果很差。

互聯網挖掘弱口令漏洞的方法

使用 GoogleHacking 語法進行尋找登陸頁面:

inurl:login
intext:後臺登陸
...

一般爲節省時間只測試幾種常見的弱口令:

admin/admin
admin/admin123
admin/123456
...

若挖到弱口令漏洞,能夠提交到國家信息安全漏洞共享平臺CNVD

下面是文中使用的靶場官網和工具教程:

DVWA官網:
http://www.dvwa.co.uk/

BurpSuite實戰指南:
https://t0data.gitbooks.io/burpsuite/

相關文章
相關標籤/搜索