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

Goal: 1000 CNY · Raised: 1000 CNY

100.0%

CVE-2024-23897 PoC — Jenkins 安全漏洞

Source
Associated Vulnerability
Title:Jenkins 安全漏洞 (CVE-2024-23897)
Description:Jenkins 2.441 and earlier, LTS 2.426.2 and earlier does not disable a feature of its CLI command parser that replaces an '@' character followed by a file path in an argument with the file's contents, allowing unauthenticated attackers to read arbitrary files on the Jenkins controller file system.
Description
CVE-2024-23897 | Jenkins <= 2.441 & <= LTS 2.426.2 PoC and scanner. 
Readme
# CVE-2024-23897 | Jenkins <= 2.441 & <= LTS 2.426.2 PoC and scanner

## 📜 Description

Exploitation and scanning tool specifically designed for Jenkins versions `<= 2.441 & <= LTS 2.426.2`. It leverages `CVE-2024-23897` to assess and exploit vulnerabilities in Jenkins instances. 

![image](https://github.com/xaitax/CVE-2024-23897/assets/5014849/e915b71e-62f5-45c0-8a68-c57b60ad53ed)

## 🚀 Usage

Ensure you have the necessary permissions to scan and exploit the target systems. Use this tool responsibly and ethically.

```bash
python CVE-2024-23897.py -t <target> -p <port> -f <file>
```

or

```bash
python CVE-2024-23897.py -i <input_file> -f <file>
```

**Parameters:**
- `-t` or `--target`: Specify the target IP(s). Supports single IP, IP range, comma-separated list, or CIDR block.
- `-i` or `--input-file`: Path to input file containing hosts in the format of `http://1.2.3.4:8080/` (one per line).
- `-o` or `--output-file`: Export results to file (optional).
- `-p` or `--port`: Specify the port number. Default is 8080 (optional).
- `-f` or `--file`: Specify the file to read on the target system.
- `-o` or `--output`: Path to output file for saving the results (optional).
- `-c` or `--command`: The jenkins-cli.jar command [help|who-am-i|connect-node]. Default is 'help' (optional).
- `-l` or `--language`: The language code you want to use. Default is en_US (optional).

## 📆 Changelog

### [29th Febuary 2024] - Bugs & Feature Request (thanks to [@cbartholomew](https://www.linkedin.com/in/christophermbartholomew/))

- The packet length will now adjust to ensure all file names will be uploaded with the correct packet lengths. i.e. works with more than just /etc/passwd or 11 character file lenghts.
- Added `-c COMMAND` which allows the testing of other jenkins-cli.jar commands: who-am-i,connect-node. Default remains "help".
- Added `-l LANGUAGE` which allows for the 5 byte language code, i.e. en_US, cn_ZH, etc. The default is en_US.

### [27th January 2024] - Feature Request

- Added scanning/exploiting via input file with hosts (`-i INPUT_FILE`). 
- Added export to file (`-o OUTPUT_FILE`).

### [26th January 2024] - Initial Release

- Initial release.

## Contributing
Contributions are welcome. Please feel free to fork, modify, and make pull requests or report issues.

## 📌 Author

**Alexander Hagenah**
- [URL](https://primepage.de)
- [Twitter](https://twitter.com/xaitax)

## ⚠️ Disclaimer

This tool is meant for educational and professional purposes only. Unauthorized scanning and exploiting of systems is illegal and unethical. Always ensure you have explicit permission to test and exploit any systems you target.
File Snapshot

[4.0K] /data/pocs/b6271586a3a0acba00b4bf44b8d917e5dd0ea3ed ├── [6.9K] CVE-2024-23897.py └── [2.6K] README.md 0 directories, 2 files
Shenlong Bot has cached this for you
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 →