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

Goal: 1000 CNY · Raised: 1000 CNY

100.0%

CVE-2023-48084 PoC — Nagios XI 安全漏洞

Source
Associated Vulnerability
Title:Nagios XI 安全漏洞 (CVE-2023-48084)
Description:Nagios XI before version 5.11.3 was discovered to contain a SQL injection vulnerability via the bulk modification tool.
Description
Fixes broken syntax in the POC, automates the API_Token retrieval, stores the token as a variable and pipes into the fixed POC.
Readme
# CVE-2023-48084
Fixes broken syntax in the POC, primarily incorrect import and incorrect referral to API functions.

automates the API_Token retrieval, stores the token as a variable and pipes into the fixed POC.

https://github.com/Hamibubu/CVE-2023-48084

If for some reason this does not work, diffcheck the source of the dependency linked above and revert my changes.

## Installation

```
git clone https://github.com/bucketcat/CVE-2023-48084
cd https://github.com/bucketcat/CVE-2023-48084
python3 -m venv /. #You can also use virutalenv, conda, pipenv, miniconda
source ./bin/activate
pip install /bin/requirements.txt

```

### Adjusting for other websites or cookie based exploits
Note, this is hardcoded for a specific lab. It should still work any scenario where you would need to curl an API token through a post request and use CVE-2023-48084.
Currently, the values are hardcoded. But they could be changed to handle input. Specifically the user, password, API URL for the post request and the URL for the POC exploit. The API return values/syntax might require some changes in parsing the token, but since I swapped from using regex to using json.get for parsing it should work universally. Well, hopefully. The original POC also handles session cookies. To swap from API token, just change the -c to -a in main.py and either adjust the token retrieval in  main.authenticate() to your needs or hardcode the value.
File Snapshot

[4.0K] /data/pocs/54aafc15d44ce06839afa6e98ac56b6e31fd0c34 ├── [4.0K] CVE-2023-48084 │   ├── [ 11K] CVE-2023-48084.py │   ├── [4.0K] git_jank │   │   ├── [ 301] config │   │   ├── [ 73] description │   │   ├── [ 21] HEAD │   │   ├── [4.0K] hooks │   │   │   ├── [ 478] applypatch-msg.sample │   │   │   ├── [ 896] commit-msg.sample │   │   │   ├── [4.6K] fsmonitor-watchman.sample │   │   │   ├── [ 189] post-update.sample │   │   │   ├── [ 424] pre-applypatch.sample │   │   │   ├── [1.6K] pre-commit.sample │   │   │   ├── [ 416] pre-merge-commit.sample │   │   │   ├── [1.5K] prepare-commit-msg.sample │   │   │   ├── [1.3K] pre-push.sample │   │   │   ├── [4.8K] pre-rebase.sample │   │   │   ├── [ 544] pre-receive.sample │   │   │   ├── [2.7K] push-to-checkout.sample │   │   │   └── [3.6K] update.sample │   │   ├── [ 297] index │   │   ├── [4.0K] info │   │   │   └── [ 240] exclude │   │   ├── [4.0K] logs │   │   │   ├── [ 194] HEAD │   │   │   └── [4.0K] refs │   │   │   ├── [4.0K] heads │   │   │   │   └── [ 194] main │   │   │   └── [4.0K] remotes │   │   │   └── [4.0K] origin │   │   │   └── [ 194] HEAD │   │   ├── [4.0K] objects │   │   │   └── [4.0K] pack │   │   │   ├── [1.2K] pack-35a000df7327c24a8fec1b3ea196f068c70c2255.idx │   │   │   └── [3.4K] pack-35a000df7327c24a8fec1b3ea196f068c70c2255.pack │   │   ├── [ 112] packed-refs │   │   └── [4.0K] refs │   │   ├── [4.0K] heads │   │   │   └── [ 41] main │   │   └── [4.0K] remotes │   │   └── [4.0K] origin │   │   └── [ 30] HEAD │   ├── [ 955] README.md │   └── [ 25] requirements.txt ├── [1.7K] main.py ├── [1.4K] README.md └── [ 38] requirements.txt 15 directories, 32 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 →