Pikachu【環境搭建+暴力破解】


摘要:

需下載的資源

pikachu源碼下載地址:http://github.com/zhuifengshaonianhanli/pikachu

 

實驗環境介紹:

  本地搭建 在集成環境phpStudy下,將pikachu源碼放在WWW文件夾中,打開瀏覽器url中輸入:http://127.0.0.1/pikachu-master/即可。
主要工具:burp suite

Burpsuite介紹:

一款可以進行再WEB應用程序的集成攻擊測試平台。

常用的功能:

抓包、重放、爆破

 

配置完畢進入頁面顯示:

 

 然后就可以開始學習了!

 

目錄:

 

簡介:

 

  "暴力破解”是一攻擊具手段,在web攻擊中,一般會使用這種手段對應用系統的認證信息進行獲取。 其過程就是使用大量的認證信息在認證接口進行嘗試登錄,直到得到正確的結果。 為了提高效率,暴力破解一般會使用帶有字典的工具來進行自動化操作。
理論上來說,大多數系統都是可以被暴力破解的,只要攻擊者有足夠強大的計算能力和時間,所以斷定一個系統是否存在暴力破解漏洞,其條件也不是絕對的。 我們說一個web應用系統存在暴力破解漏洞,一般是指該web應用系統沒有采用或者采用了比較弱的認證安全策略,導致其被暴力破解的“可能性”變的比較高。 這里的認證安全策略, 包括:
  1.是否要求用戶設置復雜的密碼;
  2.是否每次認證都使用安全的驗證碼(想想你買火車票時輸的驗證碼~)或者手機otp;
  3.是否對嘗試登錄的行為進行判斷和限制(如:連續5次錯誤登錄,進行賬號鎖定或IP地址鎖定等);
  4.是否采用了雙因素認證;
  …等等。
千萬不要小看暴力破解漏洞,往往這種簡單粗暴的攻擊方式帶來的效果是超出預期的!

 

 

 

 

基於表單的暴力破解:

進入暴力破解的子選項:基於表單的暴力破解。我們可以看到如下界面

 

步驟一:將瀏覽器的連接設置設置為手動配置代理,端口號8080,將不使用代理清空

 

 

 

 

步驟二:.在輸入框隨意輸入用戶名和密碼,然后抓包,點擊send to intruder

 

 

 步驟三:查看HTTP history,確認抓到包

 

 

 步驟四:將正確的抓包發送給Intruder

 

 

步驟五:在intruder頁面中,點擊positions,配置變量。先點擊clear $清除變量,然后選中用戶名和密碼,點擊add $添加變量,攻擊方式為 cluster bomb

 

 

 步驟六:點擊payloads,配置字典。
  payload set對指定變量設置。
  payload type指定payload類型,這里選擇simple list。
  選擇payload set 1在payload options中添加列表,這里演示所以添加少量,同樣在payload set 2添加密碼列表。然后點擊start attack。

 

 

 

 

步驟七:開始破解

 

 最后根據Length的值不同,可找到正確數據

 

 

 步驟八:驗證一下

 

 

驗證碼繞過(on server)

 驗證碼可以用來防止惡意注冊、防止暴力破解。服務端驗證碼常見問題:

  • 驗證碼在后台不過期,導致長期可以使用
  • 驗證碼校驗不嚴格,邏輯出現問題
  • 驗證碼設計的太過簡單和有規律,容易被猜解

 

 

   我們先簡單的測試一下,不輸入驗證碼的情況下會提示驗證碼為空,輸入錯誤驗證碼的情況下會提示驗證碼錯誤,只有驗證碼正確的前提下才會提示賬號或密碼不存在。

   下面通過抓包判斷一下服務器端有沒有對驗證碼進行驗證,發現是有的

 

 

說明后端對驗證碼是有驗證的,我們來了解一下驗證碼生成的邏輯:

當我們刷新頁面的時候,我們會向后台發送一個請求,后台收到請求會生成一個驗證碼並在session中把驗證碼保存下來。

我們先生成一個新的驗證碼,輸入正確的驗證碼,查看源碼:

 

 

 

 顯示賬號和密碼不存在,我們換個密碼在輸入一次

 

  發現依然是提示賬號密碼不存在,正常來說應該提示驗證碼錯誤,這說明驗證碼長期有效,我們發送到Intruder中直接暴力破解 ,步驟與基於表單的暴力破解一樣,在這里我就不再截圖了。

 

 然后驗證登陸就行。

 

 

驗證碼繞過(on client)

這里我們需要輸入驗證碼,我們不能對驗證碼暴力破解,通過抓包發現請求里面只是多了驗證碼

 

   通過BurpSuite發現后台不會對輸入錯誤的驗證碼進行驗證,在瀏覽器中,輸入錯誤的驗證碼是有提示的,說明前端設置的驗證碼如同虛設,后端不會對驗證碼進行驗證。那么我們不用理會驗證碼,直接進行暴力破解就可以了,步驟如上

 

token防爆破

 利用開發者工具可以發現這里有一個隱藏的標簽

 

 

  里面的數字就是我們的token,我的每次提交的請求都會有一個token值,后端會驗證這個token值

具體步驟:

 

 

 

 

 

 我們把token設置變量,options的grep extract添加token:

 

 token變量的type設置成recursive grep

 

 設置跟隨重定向,方法如下:options->redirection設置為always

 

 然后Start attack,破解

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM