暴力破解的學習

2021-10-17 03:03:35 字數 2812 閱讀 6856

字典

乙個有效的字典,可以大大提高暴力破解的效率

1)常用的賬號密碼(弱口令),比如常用使用者名稱/密碼top 500等

2)網際網路上被脫褲後賬號密碼(社工庫),比如***當年洩漏的約600w使用者資訊

3)使用指定的字元使用工具按照指定的規則進行排列組合演算法生成的密碼

字典優化技巧

技巧一根據註冊提示資訊進行優化

對目標站點進行註冊,搞清楚賬號密碼的一些限制,比如目標站點要求密碼必須是6位以上,字母數字組合,則可以按照此優化字典,比如去掉不符合要求的密碼

技巧二如果爆破的是管理後台,往往這種系統的管理員是admin/administrator/root的機率比較高,可以使用這三個賬號+隨便乙個密碼,嘗試登入,**返回的結果,確定使用者名稱。

比如:輸入***/yyyf返回「使用者名稱或密碼錯誤」;

輸入admin/yyy返回「密碼錯誤」,則基本可以確定使用者名稱是admin因此可以只對密碼進行爆破即可,提高效率。

如果乙個**沒有對登入介面實施防暴力破解的措施,或者實施了不合理的措施。則該稱該**存在暴力破解漏洞。

1)是否要求使用者設定了複雜的密碼;

2)是否每次認證都使用安全的驗證碼;

3)是否對嘗試登入的行為進行判斷和限制;

4)是否在必要的情況下採用了雙因素認證;

存在暴力破解漏洞的**可能會遭受暴力破解攻擊,但該暴力破解攻擊成功的可能性並不是100%

1)確認登入介面的脆弱性

確認目標是否存在暴力破解的漏洞。(確認被暴力破解的「可能性」)

比如∶嘗試登入—抓包—觀察驗證元素和response資訊,判斷是否存在被暴力破解的可能。

2)對字典進行優化

根據實際的情況對字典進行優化,提高爆破過程的效率。(資訊收集生產字典)

3)工具自動化操作

配置自動化工具(比如執行緒、超時時間、重試次數等),進行自動化操作。

intruder模組可以通過對http request的資料報以變數的方式自定義引數,然後根據對應策略進行自動化的重放。常用於自動化猜測/暴力破解過程中。

target選項卡

設定攻擊目標,可以通過proxy傳送; positions選項卡 指定需要暴力破解的引數並設定成變數,同時選擇攻擊模式:

sniper:狙擊手

設定乙個payload, ,先將第乙個變數使用字典進行測試,然後在將第二個變數使用字典進行測試;

battering ram:衝撞車

設定乙個payload,所有的變數一起用字典內容被替換,然後一起嘗試;

pitchfork:草叉型(我理解為1對1)

每個變數設定乙個payload,分別使用對應的字典對變數進行同時替換;

cluster bomb:焦束炸彈(我理解為1×1)

需要為每個變數設定乙個payload,分別使用字典內容組合對變數進行替換;

payloads選項卡

設定字典,並可以對字典進行統一的策略處理;(字典路徑不能是中文路徑)

options選項卡(有些設定要專業版才可以用)

對掃瞄的執行緒、失敗重試等進行配置;

對結果設定匹配的flag: 通過乙個識別符號來區別結果,並在結果欄中flag出來

我們一般用驗證碼來做什麼?

登入暴力破解

防止機器惡意註冊

搞清楚驗證碼的認證流程

1)客戶端request登入頁面,後台生成驗證碼:

後台使用演算法生成,並將response給客戶端;

同時將演算法生成的值全域性賦值存到session中;

2)校驗驗證碼:

客戶端將認證資訊和驗證碼一同提交;

後台對提交的驗證碼與session裡面的進行比較; 客戶端重新重新整理頁面,再次生成新的驗證碼

注意:驗證碼演算法中一般包含隨機函式,所以每次重新整理都會改變;

不安全的驗證碼

使用前端js實現驗證碼(紙老虎);

將驗證碼在cookie中洩露,容易被獲取;

將驗證碼在前端源**中洩露,容易被獲取;

注:通過檢視前端源**確認是否前端js實現驗證碼,如果是前端js實現驗證碼,直接使用burp suite傳送資料報進行暴力破解。

常見問題

1.驗證碼在後台不過期,導致可以長期被使用;

2.驗證碼校驗不嚴格,邏輯出現問題;

3.驗證碼設計的太過簡單和有規律,容易被猜解

目前簡單的驗證碼已經有很成熟的識別技術,基本也等於形同虛設 你想想2306的驗證碼為啥要做成這樣~~~ 所以除了設計安全的流程外驗證碼是否夠複雜(而又不影響使用者體驗)也是在驗證碼設計中很重要的!

注:通過burp suite傳送相同驗證碼不同資料,檢視返回資料檢查驗證碼是否可以長期使用,如果可以,依然可以使用之前的方法進行暴力破解

防暴力破解的措施總結

設計安全的驗證碼(安全的流程+複雜而又可用的圖形);

對認證錯誤的提交進行計數並給出限制,比如連續5次密碼錯誤,鎖定2小時;

必要的情況下,使用雙因素認證;

token對防暴力破解的意義

將token以「type=『hidden』」的形式輸出在表單中;

在提交的認證的時候一起提交,並在後台對其進行校驗;

但,由於其token值輸出在了前端原始碼中,容易被獲取,因此也就失去了防暴力破解的意義。一般token在防止csrf上會有比較好的功效。

medusa 暴力破解

medusa 美杜莎 和hydra 九頭蛇 差不多 科普下 medusa是支援afp,cvs,ftp,http,imap,ms sql,mysql,ncp netware nntp,pcanywhere,pop3,postgresql,rexec,rlogin,rsh,smb,smtp auth v...

DVWA Brute Force(暴力破解)

本系列文集 dvwa學習筆記 分析 isset函式在php中用來檢測變數是否設定 該函式返回的是布林型別的值,即true false 可以看到,伺服器只是驗證了引數login是否被設定,沒有任何的防爆破機制,且對引數username password沒有做任何過濾,存在明顯的sql注入漏洞。方法一利...

作業(暴力破解)

基於單單表的暴力破解 首先先把攔截關一下 因為我們要讓他傳輸資料,沒必要攔截,而且就算是intercept is off 這也不影響我們的burpsuit找到它 然後開啟pikachu訓練靶場,先輸入乙個隨便的賬戶和密碼,然後可以在歷史裡找到位址是127.0.0.1的資料報,找到剛剛輸入的賬戶和密碼...