vulnhub靶机DC1记录

0x00 靶机详情

靶机地址:https://www.vulnhub.com/entry/dc-1-1,292/

根据靶机描述,需要找到5个flag,且最终目标在root目录下

 

0x02 靶机练习

下载好靶机后使用VMware打开,暂时不知道靶机ip地址

nmap探测局域网存活主机

nmap -sP 192.168.217.0/24

 

信息收集

首先使用nmap进行端口扫描

nmap -A -T4 -p- 192.168.217.144

扫描出来开放的端口有22(ssh)、80(http)、111(rpcbind)

并且web服务使用的是Drupal 7的CMS

访问靶机主页

进行目录文件扫描,没有找到任何可利用的文件目录

网站的CMS是Drupal 7的版本,搜索一下这个CMS的漏洞

searchsploit Drupal

搜索到的漏洞还是挺多的,从中可以看到一个7.x版本的RCE漏洞

 

漏洞利用

使用Metarsploit利用,首先搜索一下利用模块

选择第四个模块,设置RHOSTS后直接exploit拿到shell

 

Flag1 

进入shell后使用python拿到一枚sh,然后查看当前目录下的文件,找到flag1

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

 从flag1的内容来看,应该跟下一个flag有关,需要找CMS的配置文件

 

Flag2

寻找网站目录下的目录文件,在/sites/dafault/setting.php中找到flag2

同时,在flag2下面的信息显示暴力破解不是获得权限的唯一方式。你可以用这些凭据来做什么。

在这些信息下面,可以看到是有数据库的配置信息的,可以登录Mysql看看。

 

Flag3:

使用用户名:dbuser 密码:R0ck3t 进入Mysql

尝试查找用户名和密码,查询到两个用户名信息,但是密码经过加密

继续查询,看到一丝和flag3有关的线索

可以看到flag3的uid为1,需要管理员权限,那么还是需要管理员账号密码

经查找,Drupal对数据库的加密方法,加密脚本位置在网站根目录下的scripts下,可以生成一个密码来重置管理员密码

使用加密脚本生成密码

./scripts/password-hash.sh 123456

进入数据库使用新密码直接更新管理员密码

update drupaldb.users set pass="$S$DdmBhLlallvOCYljnFbI8Dwqf.qekhMHfK2P7b7QDjPU01oHWarP" where uid=1;

更新成功,使用admin/123456登录网站

登录后在Content中找到flag3

提示中需要寻找密码、需要-exec命令发现隐藏的部分

 

Flag4

在/home/flag目录下找到fag4

根据提示,可以用相同的办法得到最终的flag

 

TheFinalFlag:

最终flag在/root根目录,直接cd无法进入,权限不够需要提权

 

用suid提权

查找一下具有root权限的命令

find / -perm -u=s -type f 2>/dev/null

发现find有root权限,那么利用find提权

find ./123 -exec '/bin/sh' \;

 成功获取到最终flag

 

0x03 总结

至此练习结束,练习的过程是很好的学习的过程

这次的靶机练习中,主要的点就是Drupal CMS的历史漏洞以及suid的提权,希望继续努力。

posted @ 2020-05-18 16:23  Cl0wn  阅读(473)  评论(0编辑  收藏  举报