发现DC实验室都挺好玩的,就拿来玩玩,顺便记录下。
扫描主机地址:
然后
nmap
扫描
看到有80端口,访问。
看到是Drupal
,上神器msf。
有7个可用,经测试exploit/multi/http/drupal_drupageddon
模块可以反弹meterpreter
。
设置好options
之后开始攻击。
之后信息收集一波。
权限不是root,需要提权。
进入shell
模式吧。
ls一下,发现了flag1
看到了config
整句话翻译一下就是:每一个好的CMS都需要一个配置文件-你也是。
找配置文件的信息。在sites/default/settings.php
中。
看到了
flag2
和数据库有关信息。
flag2翻译过来就是:不是只有暴力和字典攻击才能获得访问权限的方法(而且您将需要访问权限)。你能用这些证件做什么?
尝试mysql -udbuser -p
登陆,结果发现无法进入。
这时候用到了python
,python -v
返回了版本信息,证明有python组件。使用python
获得交互式shell
python -c "import pty;pty.spawn('/bin/bash')"
然后再进入
mysql
成功进入。
查看数据库里面的信息,最后得到的users
里面的信息:
可惜的是被加密了,而且是把密码和用户名或其它随机字符串组合在一起后使用 MD5 方式加密。
爆破当然可以,还有其他方法。
看网站有个重置密码的选项。
而且
drupal
自带了 password-hash.sh
这个加密功能。
php scripts/password-hash.sh drupal > paawd.txt
密码已经被加密好了,接下来就是重置管理员密码:
update users set password = '$S $DJk.3Db/IGwHulzs1NT8Z3jLE5eagaUBLwxWuczswNgACZLbtGj6' where name = 'admin';
然后再去网站用新的密码登陆。
成功登陆。
在content
里面看到了flag3
的信息。
翻译一下:特殊的perms将有助于找到passwd,但您需要执行该命令来确定如何获取shadow中的内容。
用suid
提权。
翻看目录,在home/flag4
里面看到了flag4
的内容。
还是翻译过来:您可以使用相同的方法在根目录中查找或访问标志吗?
可能。但也许不是那么容易。或许是这样?
但是提权还没有结束,依然不是root
权限。
使用find ./ aaa -exec '/bin/sh' \;
进行提权。
成功变为root权限。
然后直接模糊搜索
find * -name "*.txt"
看到了
thefinalflag
至此DC-1五个flag全部找到。