VulnHub是一個面向所有人開放的安全靶場,裡面有很多安全環境,只要下載相關映像檔,在相關虛擬機器上面執行就可以練習相關靶場了。裡面設計了好多關,如果有耐心一定可以到達峰頂。許多考OSCP人員,也會利用Vulnhub靶場進行刷題。我們下載了一個經典漏洞靶場,給大家進行演示,希望讓初學者知道滲透測試的套路,可以更快的成長。
靶機:Raven: 2
首先,先查詢自己本地的IP,可以透過 ifconfig查詢。
eth0 192.168.44.136 這是本地IP ,同時也是攻擊者端
透過nmap工具,使用-sP,Ping方式來快速掃描該網段上的其他主機。
結果可發現 該標的物為 192.168.44.142
找到標的端後,繼續使用nmap -A,完整掃描該主機服務。
結果顯示開啟 22 port 、80 port 、111 port 、57923 port
因為有 80 port,於是我們使用Dirb工具掃描網站目錄
發現有wordpress、vendor 幾個目錄。
查看vendor,有幾個檔案引起了我的興趣,PATH、PHPMailerAugoload.php、Version
於是我們查看PATH,發現得到了第一個Flag。
PHPMailerAugoload.php 讓我想到了CVE 2016-10033,而查看Version後,發現版本是 5.216。
PHPMailer < 5.2.18 - Remote Code Execution 我們可以利用此Exploit來進行RCE
透過 nc 監聽 4444 port後,我們執行Exploit,然後訪問shell,即可成功反連回來。
查看id 用戶 是 www-data,而在/var/www目錄下找到第二把Flag。
記得,我們前面透過Dirb掃描時,有找到Wordpress,而Wordpress底下有個wp-config.php設定檔,可以查看此設定檔找到資料庫的帳號密碼。
然後透過MySQL UDF提權 ,UDF提權老方法,這邊就不多贅述了。
這邊使用do_system,之後可以用find來執行命令
create table test1(line blob);
insert into test1 values(load_file('/tmp/1518.so'));
select * from test1 into dumpfile '/usr/lib/mysql/plugin/1518.so';
create function do_system returns integer soname '1518.so';
select do_system('chmod u+s /usr/bin/find');
建立個目錄raj,然後透過 find 來執行命令,即可成功提權。
touch raj
find raj –exec "whoami" ;
find raj –exec "/bin/sh" ;
直接訪問 /root目錄後,成功找到第四把flag。
目前已找到 flag1 flag2 flag4 ,還缺 flag3。
於是我們直接透過 find 搜尋關於flag的資訊。
可以看到 flag3 藏在 wordpress底下的目錄
訪問該目錄png後,成功取得flag3。
結束。