Skip to content
KitploitKITPLOIT
ToolsBlog
Submit
ToolsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

··Feeds·Contact·Privacy·© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
CVE-2025-31161 — A proof of concept for CVE-2025-31161, using mangled HTTP header to perform unauthenticated impersonation of any user in Crush FTP server. | Kitploit
Tools/GitHubGitHub/shisones/cve-2025-31161
Vulnerability AnalysisExploitationWeb Application ExploitationPenetration TestingAuthenticationRed Teaming
GitHubshisones/cve-2025-31161

CVE-2025-31161

A proof of concept for CVE-2025-31161, using mangled HTTP header to perform unauthenticated impersonation of any user in Crush FTP server.

View Repository
26 months agoNot yet reviewed

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share

CVE-2025-31161

Warning: This tool is for authorized security testing and educational purposes only. Unauthorized use against systems you do not have explicit permission to test is illegal.

Overview

This tool is a proof-of-concept (PoC) for CVE-2025-31161, a critical authentication bypass vulnerability in CrushFTP (versions < 10.8.4 and < 11.3.1). The vulnerability exploits a logic error in the AWS4-HMAC header parsing, where a mangled header triggers an IndexOutOfBounds exception. This exception prevents the server from cleaning up the session, effectively leaving the user authenticated as the requested account without a password.

Technical Summary

  • Vulnerability Type: Authentication Bypass / Logic Flaw.
  • Mechanism: Header mangling (Credential=user/) causes an unhandled Java exception, bypassing session cleanup.
  • Impact: Full administrative takeover of the CrushFTP instance.

Prerequisites

  • Python 3.x
  • requests library
root@kitploit:~
pip install requests

Usage

The script operates in two modes: Check (Observation) and Exploit (Action).

1. Check Mode

Verifies if the target is vulnerable by attempting to leak a session cookie for the default admin account. This does not modify the target system.

root@kitploit:~
python3 exploit.py check -u <target_ip> -p <port>
  • Example: python3 exploit.py check -u 192.168.1.50 -p 8080

2. Exploit Mode

Hijacks a session for the specified administrative user and uses it to inject a new administrative account into the MainUsers group.

root@kitploit:~
python3 exploit.py exploit -u <target_ip> -p <port> -a <admin_user> -nu <new_username> -np <new_password>
  • Example: python3 exploit.py exploit -u 192.168.1.50 -p 8080 -a crushadmin -nu operator -np StrongPass123!

Parameters

FlagNameDescriptionDefault
-u--urlTarget IP address or hostnameRequired
-p--portTarget port8080
-a--admin_userExisting admin account to impersonatecrushadmin
-nu--new_userUsername for the new admin accountRequired
-np--new_passwordPassword for the new admin accountRequired
Download Tool