您好,登錄后才能下訂單哦!
這篇文章主要介紹怎么利用暴力破解攻擊打進目標Web服務器,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
在很多現實的攻擊案例中,大多數攻擊者都是通過暴力破解的方式來入侵目標系統的,此時攻擊者主要利用的是弱密碼以及密碼管理方面的安全問題。Web應用和Web服務特別容易受到密碼暴力破解攻擊,因為它們相對來說比較容易實現遠程訪問,而且數量和種類都非常豐富。在這篇文章中,我們將站在攻擊者的角度跟大家介紹幾種不同類型的針對Web應用的暴力破解攻擊。
注:我們將使用到網上現成的開源Web安全工具,例如AppBandit Attack Proxy和Fuzzer from the OnlineSuite來演示攻擊路徑。
在互聯網發展的早期,基礎認證(例如摘要認證和NTLM等)是普遍采用的認證標準。毫無疑問,這種方法的安全性是不足以滿足我們需求的,但是很多開發人員仍在使用這種認證方案來對路由器管理接口和Web服務等關鍵節點進行保護。之所以這種認證方法能夠得到廣泛使用,主要是因為它實現起來非常簡單(基于特殊構造的Header,其中包含的用戶名和密碼均以base64格式編碼)。
接下來,我們要開發一個針對基礎認證的暴力破解攻擊。打開AppBandit的Fuzzer或Fuzzer from the online suite,并配置一些相關參數。首先,我們需要設置授權Header,然后添加基礎認證選項:
我們將從已知賬號中選取用戶名,然后從某些著名數據庫中選擇常用字典:
AppBandit和Fuzzer沒有自帶字典文件,但是它們都可以使用外部字典。我們可以直接把字典文件拖進工具窗口,然后你就可以使用各種類型的常用字典列表了:
確保你將并行請求的最大數量設置為60以上,并降低timeout到5秒左右,這樣可以提升攻擊的效率。接下來,我們只需要觀察控制臺中的響應碼就可以了解密碼的破解情況了。
很多應用程序,尤其是移動端App都會使用基于PIN碼的認證,即使用4-6位數字碼進行認證。基于電子郵件或SMS短信發送認證令牌來實現2FA的方法也屬于這類攻擊范疇。毫無疑問,PIN碼安全性的熵其實非常低,無論你準備按數字順序破解還是隨機破解,暴力破解的實施難度都不大。
接下來,我們將對一個虛擬的JSON服務發起攻擊。首先,我們要配置有效的服務請求。然后再請求body中,我們還需要對PIN碼生成器進行正確編碼。因此,我們需要JSON編碼器來引用這些值。除此之外,我們還需要將PIN碼長度填充到正確長度。
用于實現數據填充的pad對象包含一個簡單的循環計數器(0-9999),因為這里有效的PIN碼是4位數字,所以我們需要在數字前填充額外的‘0’來制作4位數字PIN碼,我們還可以利用同樣的技術來制作6位或8位數字PIN碼。
大家可以根據自己的需要來配置請求數量并降低timeout。跟針對基礎認證的暴力破解攻擊不同,這種類型的攻擊需要根據目標應用程序的特性來設計。
基于表單的認證機制是目前Web最常見的身份驗證方案。實際上,幾乎任何一個PHP應用都實現了這種認證,但大多數的安全性都不高。為了發動針對表單認證的暴力破解攻擊,我們這里需要設置目標應用程序所需要的參數。我們可以使用AppBandit Proxy或類似HTTPView這樣的工具來捕捉信息。
這里我們可以稍微轉變一下思路,比如說,我們不需要用很多密碼去測試一個賬號,我們可以用一小部分的常用密碼來測試大量的賬號。接下來,我們需要設置一個用戶列表生成器。首先,我們要定義一些變量,并提升攻擊的可配置性。
我們現在使用了一些字典(大多數來自seclists),我們可以動態生成電子郵件地址。實際上,我們還可以同時對多個域名實施攻擊。
現在,我們要添加一百個常用密碼(使用另一個seclists字典),結果如下:
在真實的攻擊場景中,你可能還需要觀察控制臺中的響應請求,因為在很多情況下我們可以通過分析有效cookie來了解攻擊是否成功。
目前還沒有任何一個安全系統可以完全抵御這種類型的攻擊,因為攻擊者可以通過多種方式來實現密碼爆破攻擊。坦白的說,只要我們還在使用密碼,我們就是不安全的。雖然雙因素身份認證機制是目前比較安全的一種方案,但是它同上是作為一種可選項出現的,而且在某些情況下2FA同樣能夠被繞過。
以上是“怎么利用暴力破解攻擊打進目標Web服務器”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。