Detect CVE-2026-48908 - JoomShaper SP Page Builder Unrestricted File Upload in Google Chronicle
Detects exploitation of CVE-2026-48908, an unrestricted file upload vulnerability (CWE-434) in JoomShaper SP Page Builder for Joomla. Attackers can upload files with dangerous types (e.g., PHP webshells) through the page builder interface, leading to remote code execution. This vulnerability is listed in CISA's Known Exploited Vulnerabilities catalog.
MITRE ATT&CK
- Tactic
- Initial Access Execution Persistence
YARA-L Detection Query
rule cve_2026_48908_sp_page_builder_upload {
meta:
author = "df00tech Detection Engineering"
description = "Detects unrestricted file upload exploitation via JoomShaper SP Page Builder (CVE-2026-48908)"
severity = "CRITICAL"
priority = "HIGH"
mitre_attack_technique = "T1190"
cve = "CVE-2026-48908"
reference = "https://nvd.nist.gov/vuln/detail/CVE-2026-48908"
events:
$http.metadata.event_type = "NETWORK_HTTP"
$http.network.http.method = "POST"
re.regex($http.network.http.request_url, `(?i)/components/com_sppagebuilder`) nocase
$http.network.http.response_code in (200, 201, 202)
(
re.regex($http.network.http.request_url, `(?i)\.(php\d?|phtml|phar|asp|aspx|jsp|cgi|pl|py|sh|bash)`) nocase
or
re.regex($http.network.http.user_agent, `(?i)(curl|python-requests|go-http|libwww)`) nocase
)
$http.principal.ip = $src_ip
condition:
$http
} Chronicle YARA-L rule detecting HTTP POST requests to SP Page Builder upload endpoints with dangerous file extensions or suspicious user agents, indicating CVE-2026-48908 exploitation.
Data Sources
Required Tables
False Positives & Tuning
- Automated Joomla update processes that POST PHP files to component directories
- Internal security tools using curl or python-requests for legitimate health checks
- CDN or reverse proxy prefetch requests that may appear as POST requests to component paths
Other platforms for CVE-2026-48908
Testing Methodology
Validate this detection against 3 adversary techniques from Atomic Red Team. Each test below lists the behaviour to exercise and the telemetry you should expect to see. Executable commands and cleanup steps are available with Pro.
- Test 1Unauthenticated PHP Webshell Upload via SP Page Builder
Expected signal: Web server access log entry: POST /index.php?option=com_sppagebuilder&task=file.upload HTTP/1.1 200; multipart/form-data body containing filename=shell.php with PHP content
- Test 2Double Extension Bypass Upload Attempt
Expected signal: POST request to SP Page Builder upload endpoint with filename containing double extension (.php.jpg); web server logs showing 200 response and file write event to upload directory
- Test 3Webshell Execution Verification Post-Upload
Expected signal: Web server access log entries: GET /images/shell.php HTTP/1.1 200; process execution events showing php-fpm or apache spawning child processes (id, hostname, uname); potential outbound network connections from web server process
References (4)
- https://extensions.joomla.org/extension/sp-page-builder/
- https://www.cisa.gov/news-events/directives/bod-26-04-prioritizing-security-updates-based-risk
- https://www.cisa.gov/news-events/directives/bod-26-04-implementation-guidance-prioritizing-security-updates-based-risk
- https://nvd.nist.gov/vuln/detail/CVE-2026-48908
Unlock Pro Content
Get the full detection package for CVE-2026-48908 including response playbook, investigation guide, and atomic red team tests.