tristanqtn
Source-scoped identity with 3 associated PoCs and 3 linked vulnerabilities.
Exploit catalog results
Showing 3 PoCs on this page
GitHubtristanqtn/CVE-2024-37054
Repository PoCStars: 1Created 2026-05-19ExploitCVE-2024-370542 files
Analysis
Technical assessment
The artifact is a Python exploit for CVE-2024-37054, a deserialization vulnerability in MLflow. It automates discovery of MLflow models, uploads a malicious cloudpickle payload to overwrite the model's python_model.pkl artifact, and triggers remote code execution via a reverse shell.
Backdoor review
No backdoor observed in reviewed code
The artifact is a proof-of-concept exploit for CVE-2024-37054. It demonstrates a legitimate deserialization attack against MLflow by uploading a malicious pickle payload. All behavior is consistent with the stated exploit purpose: it validates MLflow access, optionally registers/logs into a target application, trains a model, resolves run/experiment IDs, builds a reverse-shell pickle, uploads it to the MLflow artifact store, and triggers model loading. No concealed, deceptive, or unrelated harmful behavior was observed.
Classification basis and observed behavior
Classification basis
The artifact contains a complete, automated Python script (exploit.py) that actively exploits CVE-2024-37054 by uploading a malicious pickle payload and triggering its deserialization to achieve remote code execution. The README describes it as an exploit and provides usage examples for obtaining a reverse shell. The code includes payload construction (build_revshell_pickle), artifact poisoning (upload_pickle), and trigger mechanisms (trigger_load), which are hallmarks of an exploit, not a scanner or writeup.
exploit.py:1-4exploit.py:202-207exploit.py:211-228exploit.py:232-243README.md:1README.md:19-29Requirements
- Network access to an MLflow tracking server (versions 0.9.0 through 2.14.1) with valid credentials (HTTP Basic Auth).
README.md:4exploit.py:39-40 - A registered MLflow model or the ability to trigger model training via the target application.
exploit.py:148-164exploit.py:324-328 - An application endpoint that calls mlflow.pyfunc.load_model() on the poisoned model, or an alternative trigger mechanism.
README.md:40exploit.py:232-243
Observed behavior
- Validates connectivity and credentials to the MLflow server by querying the registered-models/search API endpoint.
exploit.py:48-75 - Enumerates registered MLflow models and their versions when run in 'list' mode.
exploit.py:303-313 - Authenticates to a target web application (via login or throwaway account registration) to obtain a session cookie.
exploit.py:79-144 - Triggers model training on the target application by uploading a CSV file, causing a new model to be registered in MLflow.
exploit.py:148-164 - Resolves the experiment_id and run_id for a target model by querying MLflow REST APIs.
exploit.py:168-198 - Constructs a malicious cloudpickle payload that executes a bash reverse shell command via os.system upon deserialization.
exploit.py:202-207 - Uploads the malicious pickle to the MLflow artifact store, overwriting the model's python_model.pkl file.
exploit.py:211-228 - Triggers the deserialization by sending a request to the application endpoint that loads the poisoned model, resulting in remote code execution.
exploit.py:232-243exploit.py:362-366
Behaviors behind the backdoor verdict
Observables
- Reverse Shell Payload
- Payload withheldThe exploit builds a reverse shell command using attacker-supplied lhost and lport, which is the documented payload for the CVE.
exploit.py:202-207 - Target Application Interaction
- Payload withheldThe script attempts to log into a target web application and falls back to registering a throwaway account to obtain a session cookie, which is then used to trigger model loading. This is part of the documented exploit workflow.
exploit.py:79-144
What the analysis did not establish
- The evidence includes only two text files (README.md and exploit.py) from the repository snapshot. No other files (e.g., configuration, dependencies, or additional scripts) were provided, but the selected files are complete and sufficient for classification.
- The exploit targets a specific lab environment (smarthire.htb) by default, which may limit its general applicability without modification.
- Review is limited to the two text files provided; no binary or external dependencies were inspected.
- The artifact's behavior depends on network targets and user-supplied parameters; only the static code was analyzed.
This review is limited to the supplied PoC code and context. It does not assert that the code works or is safe to execute.
GitHubtristanqtn/CVE-2025-54123
Repository PoCStars: 0Created 2026-03-29ExploitCVE-2025-541232 files
Analysis
Technical assessment
Python script that authenticates to a Hoverfly instance and exploits CVE-2025-54123 to achieve authenticated remote code execution via command injection in the middleware API endpoint.
Backdoor review
No backdoor observed in reviewed code
The supplied evidence consists of a README.md describing the CVE-2025-54123 vulnerability and an exploit.py script that implements a proof-of-concept for the described authenticated remote code execution. The exploit.py script performs only the expected exploit behavior: authenticating to a Hoverfly instance, sending a crafted payload to the vulnerable middleware endpoint, and executing user-supplied commands or establishing a reverse shell. No concealed executable behavior, persistence mechanisms, credential exfiltration to unrelated parties, or other backdoor functionality was observed.
Classification basis and observed behavior
Classification basis
The artifact is a fully functional Python script that actively exploits CVE-2025-54123 by sending crafted requests to execute arbitrary commands on a vulnerable Hoverfly instance. It includes authentication, payload delivery, command execution, and output retrieval, which constitutes an exploit.
exploit.py:1-308README.md:4Requirements
- Valid Hoverfly credentials (username/password) or a session token
exploit.py:38-50exploit.py:250-262 - Target Hoverfly instance running a vulnerable version (<= 1.11.3)
README.md:4
Observed behavior
- Authenticates to the target Hoverfly instance using provided credentials or session token
exploit.py:38-50exploit.py:53-64 - Sends a PUT request to /api/v2/hoverfly/middleware with a JSON payload containing a user-controlled binary and script
exploit.py:67-77exploit.py:80-94 - Executes arbitrary shell commands on the target and returns output extracted from the error response
exploit.py:107-121 - Provides an interactive shell and reverse shell capability
exploit.py:129-144exploit.py:147-164
Behaviors behind the backdoor verdict
Observables
- Exploit Behavior
- Payload withheldThis is the normal exploit behavior for CVE-2025-54123 as described in the README and CVE record.
exploit.py:67-77exploit.py:80-94 - Reverse Shell Functionality
- Payload withheldThis is a standard feature of RCE exploits and is explicitly documented in the script's help text and the CVE description.
exploit.py:147-164exploit.py:34
What the analysis did not establish
- Only the two text files (README.md and exploit.py) were provided; no other files from the repository were included in the evidence packet.
- The analysis is limited to static review of the source code; dynamic behavior was not observed.
This review is limited to the supplied PoC code and context. It does not assert that the code works or is safe to execute.
GitHubtristanqtn/CVE-2025-66034
Repository PoCStars: 1Created 2026-03-20ExploitCVE-2025-660342 files
Analysis
Technical assessment
A Python exploit for CVE-2025-66034 that plants a PHP webshell via an arbitrary file write in fontTools varLib, then provides command execution, interactive shell, and reverse shell capabilities.
Backdoor review
No backdoor observed in reviewed code
The repository contains a documented proof-of-concept exploit for CVE-2025-66034. The exploit.py script and README.md describe a legitimate attack chain against a vulnerable fontTools endpoint: crafting a malicious .designspace file to achieve arbitrary file write and embedding a PHP webshell payload. The script's behavior is fully consistent with the disclosed vulnerability and contains no concealed backdoor, unrelated payload, or deceptive behavior targeting the person running the PoC.
Classification basis and observed behavior
Classification basis
The artifact contains a complete, functional Python script (exploit.py) that actively exploits CVE-2025-66034 by uploading a malicious .designspace file to write a PHP webshell to an arbitrary path, then executing commands on the target. This is exploit code, not a scanner or writeup.
exploit.py:1-293Requirements
- A target web application that processes user-supplied .designspace files using a vulnerable version of fontTools varLib.
README.md:18 - The attacker must know the URL of the font processor endpoint, the URL where the webshell will be reachable, and the filesystem path to write the shell.
README.md:77-79
Observed behavior
- Crafts a malicious .designspace file containing a PHP payload in a CDATA-wrapped labelname element and an arbitrary output path in the variable-font filename attribute.
exploit.py:52-91 - POSTs the malicious .designspace and a minimal valid TTF master to the target font processor endpoint to trigger the file write.
exploit.py:95-114 - Sends commands to the planted PHP webshell via HTTP GET requests and extracts command output from the binary font response.
exploit.py:117-139 - Provides an interactive pseudo-shell loop and a reverse shell trigger using base64-encoded bash payloads.
exploit.py:142-168
Behaviors behind the backdoor verdict
Observables
- Exploit Behavior
- Payload withheldThe exploit.py script constructs a .designspace file with a PHP payload in a <labelname> CDATA block and an arbitrary output path in the <variable-font> filename attribute. It then POSTs this designspace and a minimal TTF to a user-supplied process URL, and provides functions to interact with the resulting webshell.
exploit.py:52-91exploit.py:95-114exploit.py:117-139 - Documentation
- Payload withheldThe README explains the two weaknesses (unsanitized output filename and XML content passed through to output), the attack steps, and how to use the exploit script. This matches the exploit.py implementation.
README.md:1-131
What the analysis did not establish
- Only the two text files (README.md and exploit.py) were reviewed; no binary files were present or analyzed.
- The review does not assess the safety of executing the script against a real target, only whether the script itself contains a backdoor against its user.
This review is limited to the supplied PoC code and context. It does not assert that the code works or is safe to execute.