Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1359 CNY

100%

CVE-2025-31161 PoC — CrushFTP 安全漏洞

Source
Associated Vulnerability
Title: CrushFTP 安全漏洞 (CVE-2025-31161)
Description:CrushFTP 10 before 10.8.4 and 11 before 11.3.1 allows authentication bypass and takeover of the crushadmin account (unless a DMZ proxy instance is used), as exploited in the wild in March and April 2025, aka "Unauthenticated HTTP(S) port access." A race condition exists in the AWS4-HMAC (compatible with S3) authorization method of the HTTP component of the FTP server. The server first verifies the existence of the user by performing a call to login_user_pass() with no password requirement. This will authenticate the session through the HMAC verification process and up until the server checks for user verification once more. The vulnerability can be further stabilized, eliminating the need for successfully triggering a race condition, by sending a mangled AWS4-HMAC header. By providing only the username and a following slash (/), the server will successfully find a username, which triggers the successful anypass authentication process, but the server will fail to find the expected SignedHeaders entry, resulting in an index-out-of-bounds error that stops the code from reaching the session cleanup. Together, these issues make it trivial to authenticate as any known or guessable user (e.g., crushadmin), and can lead to a full compromise of the system by obtaining an administrative account.
Description
CVE-2025-31161
Readme
# CVE-2025-31161 – Authentication Bypass in CrushFTP 👊

| Category                 | Details                                  |
| ------------------------ | ---------------------------------------- |
| **CVE ID**               | CVE-2025-31161                           |
| **Severity**             | Critical                                 |
| **CVSS Score**           | 9.8 (CVSS 3.1)                           |
| **Impact**               | Full unauthenticated access              |
| **Attack Vector**        | Network (HTTP/S)                         |
| **Authentication**       | Not required                             |
| **Affected Software**    | CrushFTP 10.0.0–10.8.3 and 11.0.0–11.3.0 |
| **Fixed In**             | Versions 10.8.4 and 11.3.1               |
| **Exploitation Status**  | Actively exploited in the wild           |
| **Disclosure**           | March/April 2025                         |
| **Included in CISA KEV** | Yes                                      |

---

### 🧠 Vulnerability Details:

* The vulnerability lies in the **AWS4-HMAC-SHA256 authentication** used by CrushFTP.
* A specially crafted request containing a malformed `Authorization` header (e.g., `Credential=crushadmin/`) triggers an **authentication bypass**.
* The logic flaw can be exploited to **skip user validation checks**, often due to an **index-out-of-bounds** issue.
* An attacker can use **any known or default username** like `crushadmin` **without a password** to gain access.

---

### 🚨 Exploitation & Impact:

* Attackers exploited this in the wild to:

  * Upload files and web shells
  * Create backdoor user accounts
  * Dump credentials and configuration files
  * Deploy remote access tools (e.g., AnyDesk, MeshCentral)
* Approximately 1,500 vulnerable instances were detected exposed online.
* The exploit is **simple and reliable**, making it highly dangerous for internet-facing servers.

---

### 🛡️ Recommended Mitigations:

1. **Update CrushFTP** to version 10.8.4 or 11.3.1 immediately.
2. **If unable to patch**, use the **DMZ proxy** workaround to isolate HTTP/S access.
3. **Audit server logs** for unusual `Authorization` headers or unexpected admin activity.
4. **Restrict access** to the admin interface from public networks.
5. **Rotate credentials** and check for suspicious users, files, or tools on the server.

---

### ⚙️ Usage:

<img width="1920" height="1031" alt="bug29" src="https://github.com/user-attachments/assets/bd9bbeaf-4638-4e6e-ae09-2cc894d4764e" />

<img width="1920" height="1032" alt="bug30" src="https://github.com/user-attachments/assets/82baaed3-124e-4ba1-a075-0ea9abbbe3e7" />


```
usage: cve-2025-31161.py [-h] [--target_host TARGET_HOST] [--port PORT] [--target_user TARGET_USER] [--new_user NEW_USER] [--password PASSWORD]

Exploit CVE-2025-2825

options:
  -h, --help            show this help message and exit
  --target_host TARGET_HOST
                        Target host
  --port PORT           Target port
  --target_user TARGET_USER
                        Target user
  --new_user NEW_USER   New user to create
  --password PASSWORD   Password for the new user
```

  ### 🔒 Disclaimer:
  
This content is provided for educational and informational purposes only. Any references to vulnerabilities, tools, or exploits are intended to promote awareness, defensive security, and responsible disclosure. Unauthorized access to systems without permission is illegal and unethical. Always test in controlled environments and respect the laws and regulations of your country.
File Snapshot

Log in to view the POC file snapshot cached by Shenlong Bot

Log in to view
Remarks
    1. It is advised to access via the original source first.
    2. Local POC snapshots are reserved for subscribers — if the original source is unavailable, the local mirror is part of the paid plan.
    3. Mirroring, verifying, and maintaining this POC archive takes ongoing effort, so local snapshots are a paid feature. Your subscription keeps the archive online — thank you for the support. View subscription plans →