vulnhub里面的一个靶场,涉及到drupal7 cms远程代码执行漏洞(CVE-2018-7600)和脏牛提权。php
靶机下载地址:https://mega.nz/#!aG4AAaDB!CBLRRYQsAhTOyPJqyjC0Blr-weMH9QMdYbPfMj0LGeMcss
第一步打开虚拟机要输入用户密码才能登入,这样的话也不知道ip地址;python
那么咱们先要获取它的ip,因为在一个内网,可使用nmap进行扫描,我虚拟机设置的是NAT模式,那么看看NAT模式的网段mysql
是192.168.106.0/24的段,那么使用nmap进行C段扫描c++
明显ip为192.168.106.130,接着全端口扫描一下git
访问80端口发现一个没用的静态页面,再访问1898端口,出现web页面github
访问robots.txtweb
发现不少txt和php目录泄露,直接能够读取txt文件sql
查看源码,任意点一个图片连接shell
又是一个目录泄露,目录下的任意文件读取,可是发现只泄露的这个目录,这下面又全是css,js,png文件,先放在一边吧。
在漏扫和目录扫描以前,我先用谷歌插件wappalyzer知道了这个web是用drupal7 cms写的
同时还知道了操做系统,web服务器,后台语言。
在看看刚刚泄露出来的txt文件,发现一个文件里面也爆出了cms的版本,还更具体
这么多暗示,怕不是就是利用这个drupal7 cms的漏洞
百度一下drupal7 cms的漏洞,发现是存在一个远程代码执行漏洞的,那么去msf中查一查这个exp,而且利用。
进入msf,而后search搜索CVE-2018-7600
而后一些列的常规操做,先use,再show option,再set,最后run
这里设置一下ip和端口就能够了,端口是1898
show targets发现有不少版本,不知道选哪个,先默认吧,直接run
直接反弹了shell,发现是www-data权限,这个权限是至关于访客权限,getsystem不行。
若是不熟悉meterpreter命令交互,那么能够在根目录下写入一句话木马,而后,利用菜刀链接。
咱们查看网站根目录下面的/sites/default/settings.php文件,看其设置的配置信息
咱们看到了敏感信息,数据库的用户和密码
咱们用mysql登陆进去查一下这个数据库的user表
先从meterpreter进入shell交互命令,也就是目标机系统的操做命令。
可是mysql好像进不去,这个shell是简易版的
而后参照别人的方式用python获取标准shell
python -c 'import pty; pty.spawn("/bin/bash")'
成功进来了,查看users的用户和密码两个字段。
第一个用户就是tiago,密码拿去在线md5一下,解密不了。
最后试来试去,想到了还有个ssh没用到,这会不会是ssh的登陆帐号和密码,再去看看那个setting.php文件,发现里面就Virgulino一个密码,那么想到用户应该是用的这一个通用密码。
试了试,发现登陆上去了,可是权限还不是system的。
查看一下内核版本,发现是ubuntu 16年的
在网上去搜索一下,试了不少17年的,可是不行,再看看,发现一个16年内核版本的通杀提权,叫作脏牛提权。
去搜索一下这个漏洞,这个提权方法叫作脏牛提权,那么他的提权脚本关键字是dirty。
再kali里面搜索,或者直接用github上面的脚本,而后复制到目标机中。
网上搜索得知是这一个cpp的脚本。
在目标机上建立一个40847.cpp脚本,而后将kali里面的脏牛cpp的脚本复制过来。
而后进行编译运行:
g++ -Wall -pedantic -O2 -std=c++11 -pthread -o 40847 40847.cpp -lutil
执行成功,root用户须要用dirtyCowFun密码登陆服务器。
ssh从新链接,用户为root,密码为dirtyCowFun
成功提权得到flag。