
A C‑based proof‑of‑concept exploit for CVE‑2025‑54769, automating the creation and upload of a malicious Perl CGI script to LPAR2RRD’s upgrade endpoint, leveraging directory traversal for remote code execution.
This repository contains a Proof‑of‑Concept (PoC) exploit for CVE-2025-54769, a vulnerability found in lpar2rrd.
The vulnerability allows remote code execution (RCE) and directory traversal by abusing the /lpar2rrd-cgi/upgrade.sh endpoint. The exploit workflow is as follows:
Automatically creates a malicious Perl CGI payload (users.pl) that executes arbitrary shell commands (default: whoami).
Uses libcurl to POST the generated script as an “upgrade package” to the vulnerable endpoint, bypassing basic file validation.
Exploits a path traversal flaw to move the uploaded script into the CGI directory, making it accessible for execution.
Triggers the CGI script via a crafted GET request (/lpar2rrd-cgi/users.sh?cmd=commandLinux) and captures the command output for the attacker.
gcc exploit.c argparse.c -o exploit -lcurl
./exploit -i <IP> -p PORT -t <PROTOCOL>
./exploit -i <IP> -p <PORT> -t <PROTOCOL> -v
Replace with the target LPAR2RRD instance. The target port should match the service (e.g., 80 for HTTP, 443 for HTTPS), and the protocol should be either http or https
MIT License