VulnHub-DC系列-DC7 渗透记录

0x00 靶机环境

下载地址1:https://www.vulnhub.com/entry/dc-7,356/

下载地址2:https://pan.baidu.com/s/1xua7BTO8If5zLua8dQMryA 提取码: dd83

VulnHub-DC系列-DC7 渗透记录
只有一个flag,同时给了提示,不要去使用暴力破解。
VulnHub-DC系列-DC7 渗透记录
这次地址都给了,真好,开肝。


0x02 渗透流程

nmap走起
VulnHub-DC系列-DC7 渗透记录
还是先走80端口
VulnHub-DC系列-DC7 渗透记录
熟悉的界面,好像是dc1使用的Drupal CMS,翻出第一关的页面进行对比
VulnHub-DC系列-DC7 渗透记录
常规思路测试了好一会不一样的地方,逻辑漏洞,搜索的注入等都试过了不行,最后发现了这个页面不是原生的Drupal,是有被改过的。
VulnHub-DC系列-DC7 渗透记录
于是在搜索引擎上找了下
VulnHub-DC系列-DC7 渗透记录
发现和github相关,应该这就是提示了
VulnHub-DC系列-DC7 渗透记录
config.php中找到了一个用户名密码
VulnHub-DC系列-DC7 渗透记录
dc7user/MdR3xOgB7#dW登陆后台,失败!
VulnHub-DC系列-DC7 渗透记录
接着使用ssh进行尝试登陆,成功获取ssh权限
VulnHub-DC系列-DC7 渗透记录
接着在本目录下找到了一个backups目录和mbox邮件,先看邮件
VulnHub-DC系列-DC7 渗透记录
计划任务发出来的备份文件邮件,先看备份文件内容,在backups目录下
VulnHub-DC系列-DC7 渗透记录
是两个gpg的加密包,解密需要密码,接着查看刚刚看到的sh脚本
VulnHub-DC系列-DC7 渗透记录
是可以通过gpg --output ../website.sql --decrypt website.sql.gpg进行解密的,但是解密出来后的.sql文件特别大,想在当中找到网站的数据库用户名难度有点大,而且配置文件里面也没有找到有价值的信息。
VulnHub-DC系列-DC7 渗透记录
本以为断了线索,准备尝试本地提权了,但是查看脚本权限时,发现了另外一个线索
VulnHub-DC系列-DC7 渗透记录
这个脚本www-data是可以修改的,并且这个shroot执行的,也就是说,只有要拿到了www-data权限就可以进行提权。
VulnHub-DC系列-DC7 渗透记录
看来还是得拿到网站密码,这里除了备份文件外,在sh中还有一个特别的工具
VulnHub-DC系列-DC7 渗透记录
存在着drush工具,此工具是用来管理drupal站点的工具,可以直接用来修改drupal的密码。

官方网站https://www.drush.org/latest/commands/user_password/,但是这网站有点坑,写的不是很详细,后来还是在linux中试错试出来的。
VulnHub-DC系列-DC7 渗透记录

c7user@dc-7:/var/spool/mail$ drush user:password admin "admin"
Command user-password needs a higher bootstrap level to run - you will need to invoke drush from a more functional Drupal environment[error]
to run this command.
The drush command 'user:password admin admin' could not be executed.                                                                 [error]
dc7user@dc-7:/var/spool/mail$ drush user:password -h
(Re)Set the password for the user account with the specified name.

Examples:
 drush user-password someuser       Set the password for the username someuser. @see xkcd.com/936 
 --password="correct horse battery                                                                
 staple"

Arguments:
 name                                      The name of the account to modify.

Options:
 --password=<foo>                          The new password for the account. Required.

Aliases: upwd, user:password

正确的语法为drush user-password admin --password="admin888"
VulnHub-DC系列-DC7 渗透记录
但是仍然报错,这里提示要去drupal环境中运行,进入/var/www/html目录再次执行

dc7user@dc-7:~$ cd /var/www/html/
dc7user@dc-7:/var/www/html$ drush user-password admin --password="admin888"
Changed password for admin    

密码成功修改,登陆后台
VulnHub-DC系列-DC7 渗透记录
接下来就需要在drupal中找到反弹shell的方法,但是没想到最后是在官网上找到了https://www.drupal.org/project/shell
VulnHub-DC系列-DC7 渗透记录
下载需要找到具体的版本,外面写的是7,但是一看,作者有点坏
VulnHub-DC系列-DC7 渗透记录
8版本的,下载好对应的组件后,进行安装
VulnHub-DC系列-DC7 渗透记录
上传组件
VulnHub-DC系列-DC7 渗透记录
安装成功后,激活模块功能
VulnHub-DC系列-DC7 渗透记录
然后访问shell管理页面
VulnHub-DC系列-DC7 渗透记录
成功拿到shell,最后将反弹shell写入sh中,等待脚本的运行
VulnHub-DC系列-DC7 渗透记录
等了一会,发现反弹失败,再一查看,发现shell没有写入脚本,很奇怪,尝试先反弹一个shell,然后再写入。
VulnHub-DC系列-DC7 渗透记录
写入成功。
VulnHub-DC系列-DC7 渗透记录
等计划任务执行,感觉时间也挺奇怪的,看起来是15分钟,中间的时间大概是作者做环境时关机了,这里看自己的mail的时间更好,但是我之前在安装组件一直失败就重新安装过环境了。
VulnHub-DC系列-DC7 渗透记录
15分钟后拿到root权限
VulnHub-DC系列-DC7 渗透记录


0x03 总结

难到不难,关键是对drush此工具不熟悉,花了不少时间查看web.sql文件内容,另外安装drupal组件时还出了问题,折腾了一段时间,最后就是安装组件时,第一次不知道因为什么原因,安装不上,只能重新安装环境解决。

总的感觉是,似乎一关比一关简单。

上一篇:HX4004A/HX4004/CS3301/LP3120(电荷泵DC/DC转换电路IC)


下一篇:使用PowerShell管理Office 365资源邮箱