認證崩潰(上)之弱口令

★關於道德倫理的忠告★

關於一些網絡安全實戰內容,我還是不厭其煩的寫上這些忠告,請見諒。

以下內容摘自《Metasploit滲透測試指南》

作爲一名滲透測試者,我們可以擊敗安全防禦機制,但這是僅僅是我們工作的一部分。當你進行滲透攻擊時,請記住如下的忠告:

  • 不要進行惡意的攻擊;

  • 不要做傻事;

  • 在沒有獲得書面授權時,不要攻擊任何目標;

  • 考慮你的行爲將會帶來的後果;

  • 如果你幹了些非法的事情,天網恢恢疏而不漏,你總會被抓到牢裏的。

1、認識弱口令

1.1、認證崩潰是什麼?

認證崩潰是錯誤使用應用程序的身份認證或會話管理功能,攻擊者能夠破譯密碼、密鑰或會話令牌。一般有3種方式可以預防:多因素認證,防止暴力破解;檢查弱口令,模擬爆破操作;生成高複雜的會話ID且設置超時失效。

常見一些的風險場景:允許默認口令、弱密碼;使用弱或無效的憑據,恢復和忘記密碼找回;使用明文、加密或弱hash的密碼;使用損壞的或無效的多因子認證等。

多因子認證(Multi-Factor Authentication,MFA)是一種身份驗證方法,要求用戶提供多個不同類型的憑證,驗證其身份。目的是增加安全性。多因子認證有4種常見的憑證類型:知識因子、所有權因子、生物特徵因子、位置因子。

知識因子:指只有用戶自己知道的信息,比如密碼、PIN碼、安全問題答案等。
所有權因子:指物理設備或令牌,用於證明用戶的所有權,比如手機、USB安全密鑰、智能卡等。
生物特徵因子:指生物特徵識別,用於驗證用戶的生物特徵,比如指紋、視網膜掃描、聲紋等。
位置因子:指基於用戶當前位置的驗證,比如IP地址、GPS等信息。

1.2、什麼是弱口令

沒有嚴格和準確的定義,通常認爲容易被別人猜測到或破解工具破解的口令均爲弱口令。僅包含簡單數字和字母的口令,比如abc,123等。可按公共弱口令和條件弱口令分爲兩類,公共弱口令就是一些常見的密碼,根據大量的密碼數據統計得出的出現頻率較高的弱口令;條件弱口令是與個人信息、關係成員、所處環境、特殊指定字符相關。

個人信息:姓名、生日、手機號、特殊暱稱、愛好、社交軟件賬號、常用username、郵箱等
關係成員:家庭成員、男女朋友等
所處環境:車牌號、公司信息(名稱、成立時間、地址、域名等)、特殊指定字符等

1.3、常見密碼規則

規則 舉例
完整域名作爲網站後臺的管理密碼 www.tesla.com、tesla.com
公司名+年份 tesla2019、Tesla2018
公司名+特殊字符+年份 tesla@2019、tesla#2019、Tesla@2019
公司名+特殊字符/簡單數字組合 tesla123、tesla@123、123/@123、1234/@1234
季節/季度/月份+年份+特殊字符 Winter2019!、Spring2019!、June2019!
員工姓名簡拼+簡單數字/生日日期 zs123
員工姓名全拼 zhangshan
符合密碼強度策略(鍵盤順序) 1qaz2wsx!@#、1qazxsw2#@!、Pas$$w0rd等
最常見密碼top200 123456、password、admin等
奇葩情況 空/1/123等

1.4、弱口令示例

數據庫
賬號:root
密碼: root、root123、123456
tomcat
賬號:admin、tomcat、manager
密碼:admin、tomcat、admin123、123456、manager
jboss
賬號: admin、jboss、manager
密碼:admin、jboss、manager、123456
weblogic
賬號: weblogic、admin、manager
密碼: weblogic、admin、manager、 123456

1.5、25箇中國版弱口令樣本

(圖片來源網絡)

1.6、弱口令產生的原因和危害

主要是與個人習慣和安全意識相關,爲了避免忘記密碼使用一個非常容易記住的密碼或直接採用系統的默認密碼。常見的危害有4種:通過弱口令,攻擊者可以進入後臺修改資料;進入金融系統盜取錢財;進入OA系統可以獲取企業內部資料;進入監控系統可以進行實時監控等。

可以通過增加口令的複雜度或定期修改賬號密碼的方式來避免。

1.7、常用弱口令字典

https://github.com/rootphantomer/Blasting_dictionary

https://github.com/k8gege/PasswordDic

https://github.com/danielmiessler/SecLists

2、滲透思路

2.1、信息收集

網站無意間向用戶泄露敏感信息,根據上下文,網站可能會將各種信息泄露給潛在的攻擊者。內容包含有關其他用戶的數據、敏感的商業數據、有關網站及其基礎架構的技術細節等。

2.2、漏洞利用

通過利用大量猜測和窮舉的方式來嘗試獲取用戶口令的攻擊方式。攻擊者一直枚舉進行請求,判斷是否爆破成功,對比數據包的長度,因爲爆破成功和失敗的長度不一樣,一般成功的長度值是固定的,不同失敗類型的長度值也不一樣。

這部分在暴力破解部分實戰演示。

2.3、內網滲透

當口令爆破成功後,也就是登錄成功了。那麼從4個維度進行內網滲透:框架漏洞、邏輯漏洞、跨站請求僞造、文件上傳等。

框架漏洞:使用含有已知漏洞組件;應用程序技術棧中使用的框架、庫、工具爆出了漏洞等。
邏輯漏洞:未授權訪問漏洞;在攻擊者沒有獲取登錄權限或未授權情況下,不需要輸入密碼等。
跨站請求僞造:CSRF攻擊利用網站對於用戶網頁瀏覽器的信任,挾持用戶當前已登錄的Web應用程序,去執行非用戶本意的操作。
文件上傳:用戶上傳了一個可執行的腳本文件,通過該腳本文件獲得執行服務器端命令的能力。

2.4、清除痕跡

最後一個步驟清除痕跡。

3、弱口令工具

hydra是一款開源的暴力密碼破解工具,支持多種協議密碼的破解,可暴力破解內網windows登錄密碼等,不適用於http(s)的破解,如果需要,請用burpsuit進行破解。window需要安裝,kali系統自帶。我建議使用kali系統自帶就好,不用再安裝一次。

3.1、windows安裝

解壓hydra安裝包到指定目錄(由自己決定),然後在地址欄輸入cmd按enter鍵調出命令行窗口,輸入hydra -h 判斷工具是否可用?


3.2、使用命令

# 破解SSH密碼,默認端口
hydra -L user.txt -P password.txt ssh://IP地址
# 破解SSH密碼,非默認端口,使用-s 端口號 指定 
hydra -L user.txt -P password.txt ssh://IP地址 -s 40
# 將破解的密碼存儲到指定文件,破解成功的密碼保存下來 -o 文件名.txt
hydra -L user.txt -P password.txt ssh://IP地址 -s 40 -o ssh.txt
# hydra爆破rdp/windows遠程桌面, 前提:目標的遠程連接可以訪問
hydra -l Administrator -P password.txt rdp://IP地址
# hydra爆破mysql,前提:目標的mysql可遠程訪問
hydra -l root -P password.txt IP地址 mysql
# hydra爆破sql server , 前提:目標的mssql可遠程訪問
hydra -l sa -P password.txt IP地址 mssql
# hydra爆破http:( http-get or http-form-post)
hydra -l admin -P password.txt IP地址 http-get /login.php
hydra -l admin -P password.txt IP地址 http-form-post "/dvwa/login.php:user=^USER^&pass=^PASS^:<title>invalide</title"
# user,pass改爲賬戶密碼提交表單<label for="">的值

4、題外話

由於週日(2023-10-29)下午我有一個自考科目要考試,接下來幾天還是要臨時抱佛腳再次突擊下。所以本週就只分享這一篇了。下一篇內容是暴力破解,屬於實戰部分。

5、資料獲取

如果需要弱口令工具hydra,請關注我的公衆號:大象只爲你,後臺回覆:hydra。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章