Skip to content

ExploitDB CVE-2024-50379 a vulnerability that enables attackers to upload a JSP shell to a vulnerable server and execute commands remotely. The exploit is especially effective when the /uploads directory is either unprotected or missing on the target server.

License

Notifications You must be signed in to change notification settings

pwnosec/CVE-2024-50379

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 

Repository files navigation

CVE-2024-50379-Exploit

This repository provides a Python script for exploiting CVE-2024-50379, a vulnerability that enables attackers to upload a JSP shell to a compromised server, granting them the ability to run arbitrary commands remotely. This exploit is particularly effective if the /uploads directory is missing or lacks proper security on the target server.


Summary

The CVE-2024-50379 vulnerability affects web servers that mishandle file uploads, allowing malicious users to upload JSP shells that can execute commands remotely. The included Python script automates this exploit by uploading a shell to the vulnerable server and facilitating remote command execution through a terminal interface.


Requirements

Before running the script, make sure you have the following:

  • Python 3.6+ (Recommended)
  • requests library. You can install it via pip:
pip install requests

Target Systems

This exploit works against servers such as Apache Tomcat or similar, where the file upload functionality is insecure or the /uploads directory is misconfigured.

Warning: This tool should only be used in environments where you have explicit permission, such as during authorized penetration testing or for educational purposes. Unauthorized use is illegal and unethical.

Instructions

Step 1: Clone the repository

Clone the repository to your local machine:

git clone https://github.com/pwnosec/CVE-2024-50379.git
cd CVE-2024-50379

Install the necessary Python libraries:

pip install requests

Execute the script with:

python exploit.py

Input the base URL

When prompted, enter the base URL of the vulnerable server (e.g., http://localhost:8080). If you omit http:// or https://, it will automatically prepend http:// to the URL.

Upload the shell and run commands

Once the JSP shell is uploaded successfully, you can input commands to execute remotely. The tool will display the output.

[+] Enter the base URL (e.g., localhost:8080): http://127.0.0.1:8080
[+] Verifying server availability...
[+] /uploads directory not found (404), continuing upload attempt...
[+] Attempt 1/3 to upload the shell...
[+] Shell uploaded successfully! You can access it at: http://127.0.0.1:8080/uploads/shell.jsp
[+] Enter a command to run on the server (or 'exit' to quit): whoami
[+] Running command: whoami
[+] Command output:
root

Type exit to terminate the tool after your session is complete.

About

ExploitDB CVE-2024-50379 a vulnerability that enables attackers to upload a JSP shell to a vulnerable server and execute commands remotely. The exploit is especially effective when the /uploads directory is either unprotected or missing on the target server.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages