CVE-2025-44072
Executive Summary
CVE-2025-44072 identifies a SQL injection vulnerability in SeaCMS v13.3, specifically within the admin_manager.php component. This flaw allows an authenticated attacker (or potentially an unauthenticated attacker if the admin panel is exposed) to inject arbitrary SQL commands, leading to unauthorized data access, modification, or potential full system compromise. The vulnerability is currently unpatched, and no public proof-of-concept (PoC) code or exploit has been released. The EPSS score of 0.0% indicates low exploitation activity in the wild, but the risk remains significant for exposed instances.
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
Supply Chain & Package Security
This vulnerability is not related to NPM, PyPI, Go, or Ruby packages. It affects the SeaCMS PHP application directly. Organizations using SeaCMS should treat this as a critical supply chain risk due to the lack of a vendor patch.
CVSS Breakdown & Threat Level
The CVSS vector is unknown due to insufficient data. However, based on the nature of the vulnerability (SQL injection in an admin interface), a reasonable estimated vector would be:
- Attack Vector (AV): Network (N)
- Attack Complexity (AC): Low (L)
- Privileges Required (PR): Low (L) – requires admin panel access
- User Interaction (UI): None (N)
- Scope (S): Unchanged (U)
- Confidentiality (C): High (H)
- Integrity (I): High (H)
- Availability (A): High (H)
Estimated CVSS Score: 8.8 (High)
Threat Level: High. Exploitation could lead to full database compromise, including user credentials, site content, and server-level access via SQL to OS command execution.
Deep Dive & Mechanics
The vulnerability resides in admin_manager.php, a backend administrative script. The application fails to properly sanitize user-supplied input before incorporating it into SQL queries. An attacker can manipulate parameters (likely id, action, or similar) to break out of the intended SQL syntax and execute arbitrary statements.
Attack Flow:
- Attacker identifies the vulnerable parameter in
admin_manager.php. - Attacker crafts a malicious SQL payload (e.g.,
' OR '1'='1or a UNION-based injection). - The payload is sent via HTTP GET or POST request.
- The application concatenates the payload directly into a SQL query without parameterization.
- The database executes the attacker-controlled query, returning or modifying data as instructed.
Potential Impact:
- Extraction of admin credentials (hashed or plaintext).
- Insertion of backdoor admin accounts.
- Modification of site content or configuration.
- In some configurations,
xp_cmdshell(MSSQL) orINTO OUTFILE(MySQL) could lead to remote code execution.
Vulnerable vs. Patched Code
Since no patch is available, the vulnerable code pattern is typical of SQL injection:
Vulnerable Code (Conceptual):
$id = $_GET['id'];
$sql = "SELECT * FROM users WHERE id = " . $id;
$result = mysqli_query($conn, $sql);
Patched Code (Conceptual):
$id = intval($_GET['id']);
$stmt = $conn->prepare("SELECT * FROM users WHERE id = ?");
$stmt->bind_param("i", $id);
$stmt->execute();
The patched version uses prepared statements with parameterized queries, which completely prevents SQL injection.
Exploitation & Lab Setup
Red Team (Offensive)
Lab Setup:
- Install SeaCMS v13.3 on a local server (e.g., XAMPP, LAMP).
- Ensure the admin panel is accessible at
/admin/admin_manager.php.
Exploitation Steps:
- Identify the vulnerable parameter. Common candidates:
id,action,type. - Test for injection using a simple payload:
?id=1'(look for SQL error). - Use UNION-based injection to extract data:
?id=1 UNION SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100-- - Enumerate database tables and columns.
- Extract admin credentials from the
sea_admintable.
No public exploit code is available.
Blue Team (Defensive)
Detection:
- Monitor web server logs for SQL injection patterns in
admin_manager.phprequests. - Look for abnormal SQL keywords in GET/POST parameters:
UNION,SELECT,OR,AND,--,#,'. - Deploy a Web Application Firewall (WAF) with SQL injection rules.
Hunting:
- Search for requests to
/admin/admin_manager.phpwith unusual parameter lengths or special characters. - Correlate with database error logs showing SQL syntax errors.
Indicators of Compromise (IOCs)
Network IOCs:
- HTTP requests to
/admin/admin_manager.phpcontaining SQL keywords in parameters. - Unusually long query strings or POST bodies.
- Database error messages in HTTP responses (e.g., "You have an error in your SQL syntax").
Host IOCs:
- New or modified files in the SeaCMS installation directory (e.g., webshells).
- Unexpected database entries in
sea_admintable. - Suspicious cron jobs or scheduled tasks.
Log IOCs:
- Web server logs showing
admin_manager.phpwithUNION,SELECT,OR,ANDin parameters. - Database logs showing queries with injected SQL syntax.
Detection Engineering
YARA Rule
rule CVE_2025_44072_SQLi_SeaCMS {
meta:
description = "Detects SQL injection attempts targeting SeaCMS admin_manager.php"
author = "Valters IT"
date = "2025-04-10"
reference = "CVE-2025-44072"
strings:
$s1 = "admin_manager.php" nocase
$s2 = "UNION" nocase
$s3 = "SELECT" nocase
$s4 = "OR" nocase
$s5 = "1=1" nocase
$s6 = "'" nocase
condition:
$s1 and (any of ($s2,$s3,$s4,$s5,$s6))
}
Sigma Rule
title: SQL Injection Attempt Against SeaCMS admin_manager.php
id: 12345678-1234-1234-1234-123456789012
status: experimental
description: Detects SQL injection patterns in HTTP requests to SeaCMS admin_manager.php
author: Valters IT
date: 2025-04-10
logsource:
category: webserver
product: apache
detection:
selection:
cs-uri-stem: '/admin/admin_manager.php'
cs-uri-query|contains:
- 'UNION'
- 'SELECT'
- 'OR'
- 'AND'
- '1=1'
- "'"
condition: selection
falsepositives:
- Legitimate admin actions with similar keywords (rare)
level: high
Suricata Rule
alert http any any -> any any (msg:"CVE-2025-44072 SeaCMS SQL Injection Attempt"; flow:to_server,established; content:"/admin/admin_manager.php"; http_uri; nocase; content:"UNION"; http_uri; nocase; content:"SELECT"; http_uri; nocase; classtype:web-application-attack; sid:1000001; rev:1;)
Remediation & Mitigation
Immediate Actions:
- Isolate the SeaCMS instance from the internet if possible.
- Restrict access to
/admin/directory via IP whitelisting or VPN. - Apply a virtual patch using a WAF to block SQL injection patterns.
Long-term Fix:
- Since no vendor patch exists, consider migrating to a supported CMS.
- If migration is not possible, manually audit and fix the vulnerable code in
admin_manager.phpby implementing prepared statements. - Regularly monitor for any security updates from SeaCMS.
Compensating Controls:
- Enable detailed logging for all admin panel access.
- Implement database activity monitoring.
- Use a reverse proxy with SQL injection detection.
Valters IT
What is this? Security researchers use these exact search queries on Shodan.io (a search engine for internet-connected devices) to find vulnerable systems globally. You can copy these dorks to see if your organization's IP space is exposed.
💣 PoC CODE AVAILABLE
Exploit code for this CVE is tracked in our database.
Access poc_code via API Pro.