压在透明的玻璃上c-国产精品国产一级A片精品免费-国产精品视频网-成人黄网站18秘 免费看|www.tcsft.com

如何利用暴力攻擊破解密碼

在過去的30年里,入侵遠程計算機系統(tǒng)的工具和技術并沒有發(fā)生顯著變化。 簡而言之,在許多情況下,管理員與普通用戶的區(qū)別只不過是密碼的知識。 它聽起來不夠迷人,事實上它聽起來很嘈雜,但在大多數(shù)情況下,暴力攻擊是通過利用錯誤的密碼管理實踐打入系統(tǒng)的最實用和最簡單的方法。

實際上,Web應用程序和Web服務很容易被密碼暴力攻擊所攻陷。之所以出現(xiàn)這種情況,是因為這種類型的軟件相對容易訪問,數(shù)量也很多,同時默認情況下允許遠程使用,而且大部分都是自定義的,此外,它們還會隨著層出不窮的Web技術而不斷變化。在這篇文章中,我們將從實戰(zhàn)的角度出發(fā),介紹針對不同類型的Web應用程序的暴力攻擊方法。與此同時,我們還將借助現(xiàn)成的免費網(wǎng)絡安全工具,如AppBandit攻擊代理或某些在線Fuzzer來展示攻擊過程。

基本身份驗證

自萬維網(wǎng)早期開始,基本認證及其一些變體(如摘要認證,NTLM等)就是事實上的認證標準。 基本身份驗證足夠不安全以用于任何實際目的并不是什么秘密,但這并不妨礙開發(fā)人員利用此身份驗證方案對路由器管理界面,Web服務,管理界面等進行密碼保護。 其廣泛傳播的原因之一是因為基本身份驗證相對比較簡單,因為整個身份驗證方案會在特殊構(gòu)造的頭部上中繼,該頭部包含以base64格式編碼的用戶名和密碼。

下面,讓我們介紹針對基本身份驗證的暴力攻擊。為此,我們可以使用AppBandit的Fuzzer或其他在線Fuzzer,只要配置相應的參數(shù)就行了。首先,我們需要設置Authorization頭部,然后添加基本身份驗證信息,當然,這些都是專門針對這個特定任務而構(gòu)建的。

對于用戶名,我們將使用已知帳戶的列表。 我們也可以使用來自一些知名數(shù)據(jù)庫的通用字典。 我們將在一秒鐘之后繼續(xù),但我們會保持這一部分的簡單。

對于密碼,我們可以使用字典。實際上,AppBandit和Fuzzer不僅可以使用自身的字典,同時,還可以下載并使用安全社區(qū)提供的各種字典文件。為此,可以從下拉菜單中添加一個字典項目,然后搜索“password”,即可找到由最常用的密碼組成的列表,以及從以往著名的數(shù)據(jù)泄露事件中收集的實際密碼所組成的列表。

確保將最大并行請求數(shù)增加到60或更多,并將超時時間減少到5秒,以提高攻擊性能。 很快,我們稍后會通過簡單地監(jiān)視響應代碼來找到正確的密碼,如下面的截圖所示。

基于Pin的身份驗證

許多應用程序,尤其是移動應用程序會使用一種基于PIN的身份驗證方法,即使用4至6位數(shù)字代碼進行認證。此外,對于那些通過電子郵件或短信發(fā)送令牌而進行的雙因子身份驗證來說,也屬于這種類型,因為該方案的實現(xiàn)大都存在安全漏洞。即便如此,人們還是經(jīng)常誤以為PIN提供的低熵是安全的。但是,實際上只要對Pin進行暴力猜解,無論是以順序方式還是隨機方式進行,都可以輕而易舉的破解它。

讓我們設置針對虛構(gòu)的JSON服務的攻擊。 配置請求以使其被服務視為有效。 在正文中,我們將使用一系列項目來正確編碼引腳的發(fā)生器。 首先,我們需要JSON編碼器來報價。 我們還需要一個格式項目來將值填充到正確的針腳長度。 這對于下一步很有用。

在pad項中包含了一個簡單的計數(shù)器,例如for循環(huán)。計數(shù)器從0開始,遍歷到9999為止,步長為1。這里之所以使用這個pad項,是因為有效的Pin必須是4位數(shù)字。所以,需要用0覆蓋所有不足四位的數(shù)字。當然,這種方法同樣也可以用來處理6位和8位數(shù)字的Pin。

根據(jù)需要設置攻擊選項 – 即增加并發(fā)請求數(shù)和減少超時。 執(zhí)行攻擊。 與基本認證bruteforce示例不同,我們之前看到,它提供了一種基于狀態(tài)代碼的直接機制來區(qū)分有效和無效嘗試,這種類型的攻擊完全取決于應用程序,因此您需要提出自己的啟發(fā)式方法。 例如,您可能想要監(jiān)視內(nèi)容長度更改或狀態(tài)碼更改,即302重定向可能意味著成功驗證。 也可以根據(jù)回來花費多少時間對回應進行排序 – 即時間啟發(fā)式。 這對你來說真的很重要,但在一天結(jié)束時它是一樣的原則。

上面的配置,也適用于基于表單的身份驗證,甚至基本身份驗證——唯一不同之處,就是根據(jù)具體情況將生成器移動到所需的地方即可,其余部分完全相同。

基于表單的身份驗證

不用說,基于表單的身份驗證是網(wǎng)絡上最常見的身份驗證方案。 實際上任何PHP應用程序都會執(zhí)行一個 – 大部分時間都很糟糕。 如果正確實施,基于表單的身份驗證應該對自動化的密碼猜測嘗試具有彈性,但盡管聽起來很簡單,但在實際情況下這并不容易,因為存在許多需要特定類型處理的特殊情況。

要設置基于表單的身份驗證暴力破解,我們需要遵循基本身份驗證示例中的相同步驟。 這次我們不會使用授權標頭,但是我們必須按照應用程序的設置來設置參數(shù)。 我們可以首先通過AppBandit代理或HTTPView等工具捕獲這些信息,這些工具可以直接從您自己的瀏覽器上運行,無需額外的設置。

在進行暴力破解時,腦子一定要靈光,特別是用戶名是電子郵件的時候。例如,與其用大量密碼來暴力破解一個賬戶,不如用一部分最常用的密碼來暴力破解多個賬戶,同時,我們還可以動態(tài)生成帳戶,就像我們接下來要做的那樣。

下面,我們來為用戶列表設置一個生成器。首先,我們可以定義一些變量,以提高攻擊的可配置性。

正如你所看到的,我們正在使用一些字典(大部分來自seclists)。 我們動態(tài)生成電子郵件地址。 實際上,我們可以在同一次攻擊中覆蓋多個域。

現(xiàn)在讓我們從同一個列表中添加前100個更常用的密碼。 我們使用另一個來自seclists的字典,如示例中所示。 正如你所看到的,我們可以通過這個獲得相當?shù)膭?chuàng)意。

 

攻擊一旦開始,就需要密切關注任務的運行情況,努力尋找提示登陸成功的線索。當然,對于大多數(shù)響應來說,結(jié)果都是一樣的。對于那些包含有效憑證的請求,可以按照我們前面介紹過的那些方法進行識別。然而,有時候您需要找到自己的識別方法。不過,大多數(shù)情況下,使用內(nèi)置過濾器就足以應付了。例如,您可以過濾包含有效cookie的響應,因為一般來說,找到這樣的響應就表示認證成功了。

與身份驗證有關注意事項

Web認證系統(tǒng)很有趣,因為它們永遠不可能是完美的。 如果他們太安全,那么他們將無法訪問。 如果他們太容易訪問,他們很可能是不安全的。 因此,在使用上述任何技術破解密碼時,需要記住一些事項。

在防范暴力破解方面,最常見防御機制就是帳戶鎖定,然而,在某些情況下,攻擊者可以利用這種機制來發(fā)動拒絕服務攻擊。例如,假設用戶名是可猜測的或順序的,并設置了帳戶鎖定。那么,如果我們在生成有效用戶名方面具有很高的勝率,這就意味著我們也可以將這些人都鎖定在系統(tǒng)之外,即拒絕服務攻擊。盡管這種攻擊威脅不是很大,但仍不失為一個有效的漏洞。

同時,水平和垂直暴力攻擊之間的轉(zhuǎn)換也是一種常見的技術。換句話說,我們可以針對多個帳戶測試一個密碼,而不是針對單個帳戶嘗試多個密碼,因為我們可以枚舉帳戶或以高勝率的方式生成它們。

如果某些認證系統(tǒng)來自相同的IP地址,它們會天真地鎖定有效的認證嘗試。 后來,這些系統(tǒng)被重構(gòu)為有許多例外,因為它發(fā)現(xiàn)IPv4地址空間相對較小,許多客戶可能擁有相同的IP地址 – 例如,許多移動和光纖網(wǎng)絡實際上都是這樣工作的。 攻擊者可能能夠利用這些網(wǎng)絡之一或誘使應用程序認為它們來自例外列表中的網(wǎng)絡以繞過帳戶鎖定限制。

同樣,如果身份驗證系統(tǒng)根據(jù)攻擊者的IP地址阻止IP或NETBLOCK,則可能會將蠻力攻擊轉(zhuǎn)換為拒絕服務,因為同一網(wǎng)絡中的用戶將無法登錄。再次,這對于移動 網(wǎng)絡,因為移動用戶不太可能擁有專用的公共IP地址。 由于此類移動應用程序受到特別影響

最后,不要僅僅因為頁面上有reCAPTCHA就認為必須使用驗證碼,相反,很多時候它在那里只是個擺設而已。這是因為,reCAPTCHA或其他CAPTCHA系統(tǒng)通常都是嵌入式的,它們經(jīng)常因配置錯誤或代碼變化的緣故而不進行相關的檢查,這種情況經(jīng)常發(fā)生。

實際上,有時解除身份驗證并不起作用,也就是說,雖然看起來用戶已注銷,但實際會話并未被破壞。這樣的話,以前使用的會話可能被攻擊者重新使用。然而,這個話題實在有點大,需要單獨進行解釋。在這里,重點是要知道,有時即使不知道密碼也能登錄,因為還有其他方法。

總結(jié)

攻擊者可以通過多種方式來獲取成功的密碼破解/暴力破解攻擊,如前所述,這種攻擊非常普遍。 我們還沒有看到正在實施的安全系統(tǒng)能夠徹底根除這些類型的攻擊。 坦率地說,只要我們依靠密碼,這是不可能的。 毫無疑問,雙因素認證方案明顯更安全,但我們也需要承認它們通常是可選的,在某些情況下,它們可以被繞過。

在后續(xù)文章中,我們將針對暴力破解攻擊方式,介紹一些目前可用的防御機制。

原文:https://secapps.com/blog/2018/03/how-to-make-a-password-cracker

上一篇:如何在未Root的Android設備上解密數(shù)據(jù)庫

下一篇:MikroTik RouterOS中發(fā)現(xiàn)了可遠程利用的緩沖區(qū)溢出漏洞