POC详情: cf70a41435b9a2c61a137d43696d79b61783514c

来源
关联漏洞
标题: Apache Struts 2 输入验证错误漏洞 (CVE-2017-5638)
描述:Apache Struts是美国阿帕奇(Apache)软件基金会的一个开源项目,是一套用于创建企业级Java Web应用的开源MVC框架,主要提供两个版本框架产品,Struts 1和Struts 2。 Apache Struts 2 2.3.32之前的2 2.3.x版本和2.5.10.1之前的2.5.x版本中的Jakarta Multipart解析器存在安全漏洞,该漏洞源于程序没有正确处理文件上传。远程攻击者可借助带有#cmd=字符串的特制Content-Type HTTP头利用该漏洞执行任意命令。
描述
Apache Struts2 CVE-2017-5638 (Safe Educational Demo)
介绍
# PoC: Apache Struts2 CVE-2017-5638 (Safe Educational Demo)

## 📌 Overview
This project is a **Proof-of-Concept (PoC)** for **CVE-2017-5638**, a famous Apache Struts2 vulnerability that allowed attackers to execute arbitrary code on affected servers.  
⚠️ This repository contains a **safe, non-exploitative demo** designed for **educational purposes only**. It does not perform any malicious actions.

---

## 🔎 About the Vulnerability
- **CVE ID**: [CVE-2017-5638](https://nvd.nist.gov/vuln/detail/CVE-2017-5638)  
- **Type**: Remote Code Execution (RCE)  
- **Component**: Apache Struts2 (Jakarta Multipart Parser)  
- **Root Cause**: User input in the `Content-Type` header was improperly passed to **OGNL** (Object-Graph Navigation Language), allowing attackers to inject and execute code on the server.  
 
---

## 🛠️ How This PoC Works
This script demonstrates how an attacker might *test* for the vulnerability — but in a **harmless way**.  

- It sends a specially crafted `Content-Type` header containing an OGNL expression.  
- Instead of executing dangerous commands, the payload simply attempts to add a custom header (`X-Vuln: Vulnerable`) to the server’s response.  
- If the header appears, it means the server is processing OGNL input and is **likely vulnerable**.  

This makes it a safe demonstration of the vulnerability without actually exploiting it.  

---

## ▶️ Usage
```bash
# Install required package
pip install requests

# Run the script
python3 struts2_poc.py

# Enter a target URL when prompted (example)
http://example.com/
文件快照

[4.0K] /data/pocs/cf70a41435b9a2c61a137d43696d79b61783514c ├── [ 808] PoC-CVE-2017-5638.py └── [1.5K] README.md 0 directories, 2 files
神龙机器人已为您缓存
备注
    1. 建议优先通过来源进行访问。
    2. 如果因为来源失效或无法访问,请发送邮箱到 f.jinxu#gmail.com 索取本地快照(把 # 换成 @)。
    3. 神龙已为您对POC代码进行快照,为了长期维护,请考虑为本地POC付费,感谢您的支持。