Record summary

CVE-2026-48908 has a selected CVSS score of 10.0 (critical); EIP currently links 10 repository PoCs, 1 curated repository PoC, and 1 Nuclei template. CISA lists CVE-2026-48908 in KEV.

Description

A vulnerability in SP Page Builder for Joomla allows unauthenticated users to upload arbitrary files, ultimately resulting in the upload and execution of PHP code.

Description source: CVE List

Exploitation context

Known exploitation

CISA KEV
Listed · Jul 7, 2026 · CISA
VulnCheck KEV
Listed · Jun 15, 2026 · VulnCheck
Reported exploitation
Observed · VulnCheck

Available material

Repository PoCs
10
Curated repository PoCs
1
Nuclei templates
1

CISA SSVC decision

ExploitationActive
AutomatableYes
Technical impactTotal

CISA Coordinator · SSVC 2.0.3 · Evaluated Jul 7, 2026 · Source: CVE List

Affected products and versions

2
ProductSourceVersion rangeStatus
CISAVersion data not supplied

Default status: unaffected

CVE List1.0.0-6.6.1affected

Proofs of concept

11

Curated repository PoCs

GitHubCVE-2026-67285Curated repository PoCby exploitintelStars: 8Not analyzed10 files

C · 2.5 MiB · linked to 2 vulnerabilities

GitHub

PoC details

Repository PoCs

GitHubpapageo75/CVE-2026-48908-PoCRepository PoCby papageo75Stars: 15Exploit5 files

18.9 KiB

GitHub

PoC details
Analysisdeepseek-v4-pro:cloud ·

Technical assessment

A Python script (sppb_rce.py) that exploits CVE-2026-48908, an unauthenticated arbitrary file upload vulnerability in the SP Page Builder Joomla component, to achieve remote code execution. It uploads a crafted ZIP archive containing a PHP web shell to a publicly accessible directory and then executes commands via HTTP requests.

Backdoor review

No backdoor observed in reviewed code

The PoC is a straightforward exploit for CVE-2026-48908. It uploads a ZIP containing a token-guarded PHP webshell to a vulnerable Joomla component. The shell only executes commands when the correct token is supplied, and the script includes a cleanup function. No concealed backdoor, unrelated payload, or deceptive behavior was observed.

ClassificationExploit
Model confidence100%
AuthenticationNot required
Languagespython
Target softwareSP Page Builder for Joomla
Attack typesremote_code_executionarbitrary_file_upload
Evidence & reasoningClassification basis · observed behavior · safety review
Technical evidence

Classification basis and observed behavior

Classification basis

The artifact is a fully functional Python script that actively exploits CVE-2026-48908 by uploading a malicious ZIP file containing a PHP web shell and then executing arbitrary commands on the target server. It is not merely a scanner or writeup; it performs the exploitation steps to achieve remote code execution.

sppb_rce.py:1-223README.md:1-5

Requirements

  • Target must run a vulnerable version of SP Page Builder (<= 6.6.1) with the uploadCustomIcon task accessible without authentication.sppb_rce.py:8-12
  • The web server must allow PHP execution in the upload directory, or AllowOverride must be enabled for the .htaccess bypass method.README.md:45-49

Observed behavior

  • Sends an unauthenticated POST request to index.php?option=com_sppagebuilder&task=asset.uploadCustomIcon with a crafted ZIP file containing a PHP web shell.sppb_rce.py:85-102
  • Iterates through a list of PHP file extensions and a .htaccess bypass method, uploading a shell and checking for code execution by requesting the shell with a token and a test command.sppb_rce.py:115-140
  • If code execution is confirmed, runs a user-specified command or provides an interactive pseudo-shell by sending HTTP requests to the uploaded web shell.sppb_rce.py:189-207
Safety-review evidence

Behaviors behind the backdoor verdict

Observables

Token Guarded Webshell
Payload withheldThe uploaded PHP shell is guarded by a random per-run token, preventing unauthorized access.sppb_rce.py:65-66
Cleanup Function
Payload withheldThe script provides a --cleanup option to remove the payload directories it created.sppb_rce.py:209-216
Disclaimer
Payload withheldThe README and script header contain disclaimers stating the tool is for authorized testing only.README.md:160-177sppb_rce.py:28-29
Review boundaries

What the analysis did not establish

  • Two files (LICENSE and .gitignore) are omitted from the text evidence, but they are not required for technical analysis of the exploit code.
  • The evidence does not include the actual execution of the exploit; classification is based solely on static analysis of the provided source code.
  • Two files (LICENSE and an unspecified file) were omitted from the text content and not reviewed, but their metadata shows no executable or suspicious characteristics.
  • The review is based solely on the supplied text evidence; no dynamic analysis was performed.
Model interpretation

This review is limited to the supplied PoC code and context. It does not assert that the code works or is safe to execute.

GitHubgagaltotal/CVE-2026-48908-SP-Page-Builder-JoomlaRepository PoCby gagaltotalStars: 0Exploit5 files

1.4 MiB

GitHub

PoC details
Analysisdeepseek-v4-pro:cloud ·

Technical assessment

A Go-based exploit for CVE-2026-48908 that uploads a malicious ZIP file containing a PHP webshell to a vulnerable Joomla SP Page Builder endpoint, then executes arbitrary commands on the target server.

Backdoor review

No backdoor observed in reviewed code

The supplied evidence consists of a README and a Go source file (poc_tot.go) that implement a proof-of-concept exploit for CVE-2026-48908. The code uploads a PHP webshell via a ZIP extraction vulnerability in SP Page Builder for Joomla, then executes attacker-supplied commands. All behavior is consistent with the stated exploit purpose; no concealed backdoor, unrelated payload, or operator-directed harm beyond the exploit itself was observed.

ClassificationExploit
Model confidence100%
AuthenticationNot required
LanguagesGo
Target softwareJoomla SP Page Builder (com_sppagebuilder)
Attack typesRemote Code ExecutionArbitrary File Upload
Evidence & reasoningClassification basis · observed behavior · safety review
Technical evidence

Classification basis and observed behavior

Classification basis

The code actively exploits the vulnerability by uploading a malicious ZIP file containing a PHP webshell and then executing arbitrary commands on the target. It is not limited to detection or validation; it achieves remote code execution.

poc_tot.go:147-150poc_tot.go:304-309poc_tot.go:628

Requirements

  • Target running Joomla with SP Page Builder component version <= 6.6.1README.md:13
  • Network access to the target Joomla installationREADME.md:27

Observed behavior

  • Crafts a ZIP archive containing a PHP webshell and supporting icon font filespoc_tot.go:146-204
  • Uploads the crafted ZIP to the unauthenticated endpoint index.php?option=com_sppagebuilder&task=asset.uploadCustomIconpoc_tot.go:216-293
  • Executes arbitrary system commands via HTTP GET requests to the extracted PHP webshellpoc_tot.go:304-336
  • Provides an interactive pseudo-shell for continuous command executionpoc_tot.go:467-503
Safety-review evidence

Behaviors behind the backdoor verdict

Observables

Exploit Behavior
Payload withheldThis is the core exploit functionality described in the README and CVE context. It is not a backdoor against the PoC user.poc_tot.go:146-150poc_tot.go:304-336
Network Connection
Payload withheldThe exploit upload endpoint. Connections are made only to the user-supplied target.poc_tot.go:234-235
File Write
Payload withheldThis is the intended exploit payload delivery mechanism.poc_tot.go:146-204
Review boundaries

What the analysis did not establish

  • Evidence does not include the compiled binary; analysis is based solely on the provided Go source code and README.
  • The artifact contains non-text media files (screenshots) that were not analyzed.
  • The evidence packet reports complete_artifact_coverage as false, indicating additional files exist in the repository that were not included in the analysis.
  • The artifact includes 3 additional files (2 non-text, 1 text) that were not provided as readable text. Their content is unknown, but the analysis routing indicates they were flagged as metadata-only and not analyzed. The provided text files (README.md, poc_tot.go) constitute the complete selected text evidence.
Model interpretation

This review is limited to the supplied PoC code and context. It does not assert that the code works or is safe to execute.

GitHub0xBlackash/CVE-2026-48908Repository PoCby 0xAshweskerStars: 2Exploit2 files

11.9 KiB

GitHub

PoC details
Analysisdeepseek-v4-pro:cloud ·

Technical assessment

A Python script that exploits CVE-2026-48908, an unauthenticated arbitrary file upload vulnerability in SP Page Builder for Joomla, to upload a PHP webshell and achieve remote code execution.

Backdoor review

No backdoor observed in reviewed code

The PoC is a straightforward exploit for CVE-2026-48908. It uploads a PHP webshell via the vulnerable endpoint and executes commands. No concealed backdoor, unrelated payload, or deceptive behavior targeting the PoC operator was observed.

ClassificationExploit
Model confidence100%
AuthenticationNot required
LanguagesPython
Target softwareSP Page Builder for Joomla
Attack typesRemote Code ExecutionArbitrary File Upload
Evidence & reasoningClassification basis · observed behavior · safety review
Technical evidence

Classification basis and observed behavior

Classification basis

The script actively uploads a PHP webshell and executes commands on the target, which constitutes exploitation, not just detection or scanning.

CVE-2026-48908.py:61-98CVE-2026-48908.py:119-125CVE-2026-48908.py:187-198

Requirements

  • Target running a vulnerable version of SP Page Builder (<= 6.6.1) with the com_sppagebuilder component accessible.CVE-2026-48908.py:5CVE-2026-48908.py:12

Observed behavior

  • Constructs a malicious ZIP archive containing a PHP webshell and supporting IcoMoon files.CVE-2026-48908.py:61-98
  • Sends an unauthenticated POST request to the vulnerable upload endpoint to upload the malicious ZIP.CVE-2026-48908.py:101-116
  • Executes arbitrary system commands on the target server by sending GET requests to the uploaded webshell.CVE-2026-48908.py:119-125
  • Provides an interactive shell mode for continuous command execution.CVE-2026-48908.py:187-198
Safety-review evidence

Behaviors behind the backdoor verdict

Observables

Webshell Upload
Payload withheldThe PoC uploads a PHP file that executes system commands when provided with a correct token. This is the intended exploit behavior for the stated CVE.CVE-2026-48908.py:61-98
Command Execution
Payload withheldThe uploaded webshell executes arbitrary system commands passed via HTTP GET parameters. This is the core RCE functionality of the exploit.CVE-2026-48908.py:68-72
Token Verification
Payload withheldThe webshell requires a secret token to execute commands, preventing unauthorized use of the uploaded shell by third parties.CVE-2026-48908.py:64-67
Review boundaries

What the analysis did not establish

  • Only the two text files (CVE-2026-48908.py and README.md) were reviewed; no binary files were present or analyzed.
  • The review does not assess the safety of executing the PoC against unauthorized targets, only whether the PoC itself contains backdoor behavior.
Model interpretation

This review is limited to the supplied PoC code and context. It does not assert that the code works or is safe to execute.

GitHubayiezola/CVE-2026-48908Repository PoCby ayiezolaStars: 0Exploit6 files

214.8 KiB

GitHub

PoC details
Analysisdeepseek-v4-pro:cloud ·

Technical assessment

A Python script that exploits CVE-2026-48908 in SP Page Builder for Joomla by uploading a crafted ZIP file containing a PHP webshell via an unauthenticated endpoint, then executing arbitrary commands on the target.

Backdoor review

No backdoor observed in reviewed code

The PoC is a straightforward exploit for CVE-2026-48908. It uploads a token-guarded PHP webshell or a user-supplied custom shell to a vulnerable Joomla component. The code performs only the advertised exploit behavior: crafting a ZIP payload, uploading it unauthenticated, and executing commands via the uploaded shell. No concealed backdoor, credential theft, persistence mechanism, or unrelated payload was observed.

ClassificationExploit
Model confidence100%
AuthenticationNot required
LanguagesPython
Target softwareSP Page Builder (com_sppagebuilder) for Joomla
Attack typesRemote Code ExecutionUnrestricted File Upload
Evidence & reasoningClassification basis · observed behavior · safety review
Technical evidence

Classification basis and observed behavior

Classification basis

The script actively uploads a PHP webshell and executes attacker-supplied commands on the target, which is the definition of an exploit. It does not merely detect the vulnerability; it exercises it to achieve remote code execution.

exploit_poc.py:34-40exploit_poc.py:59-63exploit_poc.py:86-88exploit_poc.py:120-123

Requirements

  • Target running SP Page Builder ≤ 6.6.1 with the vulnerable asset.uploadCustomIcon task exposed.README.md:3exploit_poc.py:18
  • Python 3.8+ with requests and payload withheld libraries installed.README.md:25requirements.txt:1-2

Observed behavior

  • Sends an unauthenticated POST request to the asset.uploadCustomIcon task with a ZIP file containing a PHP webshell.exploit_poc.py:59-83
  • Extracts the uploaded webshell path from the JSON response and executes an arbitrary system command via HTTP GET request.exploit_poc.py:86-88exploit_poc.py:120-123
  • Supports mass scanning of multiple hosts with multi-threading and saves results to categorized output files.exploit_poc.py:272-381
Safety-review evidence

Behaviors behind the backdoor verdict

Observables

Built-In Webshell
Payload withheldThe default payload is a token-guarded PHP webshell that executes commands passed via the 'c' parameter. This is the expected exploit payload for the CVE.exploit_poc.py:39-40
Custom Shell Upload
Payload withheldThe script supports uploading an arbitrary PHP file as a custom webshell. This is a documented feature for authorized testing and does not introduce hidden behavior.exploit_poc.py:210-223
External Dependency
Payload withheldThe script imports 'payload withheld' (line 9), which is not a standard library and is listed in requirements.txt. Its purpose is unclear from the provided text, but it is used only for console output functions (info, success, warning, error) and does not introduce backdoor behavior.exploit_poc.py:9requirements.txt:2
Review boundaries

What the analysis did not establish

  • Evidence includes only the README, exploit script, and requirements file; 3 non-text media files (screenshots) are omitted.
  • The script imports 'payload withheld' which is not a standard library and may be a typo or custom module; its absence could affect execution but does not change the exploit classification.
  • The 'payload withheld' library imported from line 9 of exploit_poc.py is not included in the evidence; its source code was not reviewed.
  • Three non-text files (images) totaling 197,299 bytes were omitted from the evidence and not analyzed.
  • The evidence does not include the original PoC by papageo75 for comparison of modifications.
Model interpretation

This review is limited to the supplied PoC code and context. It does not assert that the code works or is safe to execute.

GitHubbayu06802/CVE-2026-48908Repository PoCby bayu06802Stars: 0Exploit4 files

18.8 KiB

GitHub

PoC details
Analysisdeepseek-v4-pro:cloud ·

Technical assessment

A Python script that exploits CVE-2026-48908, an unauthenticated arbitrary file upload vulnerability in the SP Page Builder Joomla component, to achieve remote code execution by uploading a PHP web shell inspayload withhelde a crafted ZIP archive.

Backdoor review

No backdoor observed in reviewed code

The PoC is a straightforward exploit for CVE-2026-48908. It uploads a ZIP containing a token-guarded PHP webshell to a vulnerable Joomla component. The code is readable, performs only the described exploit steps, and contains no concealed or unrelated harmful behavior.

ClassificationExploit
Model confidence100%
AuthenticationNot required
LanguagesPython
Target softwareSP Page Builder (com_sppagebuilder) for Joomla
Attack typesRemote Code ExecutionArbitrary File Upload
Evidence & reasoningClassification basis · observed behavior · safety review
Technical evidence

Classification basis and observed behavior

Classification basis

The artifact is a fully functional Python script that actively exploits the vulnerability by uploading a malicious ZIP file containing a PHP web shell to the target server and then executing commands on it. This goes beyond detection or scanning; it performs the exploitation steps to achieve remote code execution.

sppb_rce.py:1-5sppb_rce.py:85-107sppb_rce.py:115-140

Requirements

  • Target must be running a vulnerable version of SP Page Builder (1.0.0 – 6.6.1) for Joomla.README.md:12
  • The target's web server must allow PHP execution in the /media/ directory for full RCE, or at least allow file writes for partial impact.README.md:68-70

Observed behavior

  • Sends an unauthenticated POST request to the vulnerable endpoint (index.php?option=com_sppagebuilder&task=asset.uploadCustomIcon) with a crafted ZIP file containing a PHP web shell.sppb_rce.py:85-102
  • The ZIP file is constructed to mimic a valpayload withheld icon-font package (selection.json, style.css, fonts/*.ttf) to pass the upload valpayload withheldation, while also containing a token-guarded PHP shell.sppb_rce.py:63-82
  • Attempts multiple file extension and .htaccess bypass techniques to achieve code execution, stopping at the first successful method.sppb_rce.py:115-140
  • Executes arbitrary system commands on the target server via the uploaded web shell and returns the output.sppb_rce.py:105-107sppb_rce.py:200-207
Safety-review evidence

Behaviors behind the backdoor verdict

Observables

Token Guarded Webshell
Payload withheldThe dropped webshell is guarded by a random per-run token, preventing unauthorized access. This is a safety feature, not a backdoor.sppb_rce.py:65-66
Cleanup Functionality
Payload withheldThe script includes a cleanup option to remove the artifacts it creates, which is consistent with authorized testing and not indicative of a backdoor.sppb_rce.py:209-216
Default Command
Payload withheldThe default command executed is benign (payload withheld), and the script only runs commands supplied by the operator.sppb_rce.py:148
Review boundaries

What the analysis did not establish

  • The evpayload withheldence packet reports complete_artifact_coverage as false, indicating that not all files from the repository are included. One file (likely the LICENSE file) is omitted from the text content, but this does not affect the classification of the primary exploit script.
  • One file (LICENSE) was omitted from the text evpayload withheldence; its content is not reviewed, but it is a standard license file and unlikely to contain executable behavior.
  • The review is based solely on the supplied text; no dynamic analysis or execution was performed.
Model interpretation

This review is limited to the supplied PoC code and context. It does not assert that the code works or is safe to execute.

GitHubJenderal92/CVE-2026-48908Repository PoCby Jenderal92Stars: 2Exploit2 files

12.0 KiB

GitHub

PoC details
Analysisdeepseek-v4-pro:cloud ·

Technical assessment

A Python 2.7 script that exploits CVE-2026-48908, an unauthenticated arbitrary file upload vulnerability in the SP Page Builder Joomla extension, to achieve remote code execution by uploading a PHP web shell.

Backdoor review

No backdoor observed in reviewed code

The PoC exploits CVE-2026-48908 by uploading a ZIP containing a PHP webshell. The webshell code is fully visible and provides a file upload interface and server information, consistent with the stated RCE goal. No concealed, unrelated, or operator-directed harmful behavior (e.g., credential theft, persistence, unrelated payload) is present. Commented-out alternative payloads are inert and do not execute.

ClassificationExploit
Model confidence100%
AuthenticationNot required
LanguagesPython
Target softwareSP Page Builder for Joomla
Attack typesRemote Code ExecutionArbitrary File Upload
Evidence & reasoningClassification basis · observed behavior · safety review
Technical evidence

Classification basis and observed behavior

Classification basis

The primary artifact is a Python script that actively uploads a PHP web shell to a vulnerable target and verifies its execution, which is the definition of an exploit. The README explicitly describes it as a 'Proof-of-concept exploit'.

CVE-2026-48908.py:76-105README.md:1-3

Requirements

  • Target must be running a vulnerable version of SP Page Builder (1.0.0 - 6.6.1) with the uploadCustomIcon task exposed.README.md:16
  • Python 2.7 and the 'requests' library are required to run the script.README.md:70-71

Observed behavior

  • Constructs a ZIP archive mimicking a valid icon-font package containing a PHP web shell at 'fonts/shxt.php' or 'fonts/shxt.PHP'.CVE-2026-48908.py:26-50
  • Sends a multipart POST request to the vulnerable 'asset.uploadCustomIcon' endpoint to upload the crafted ZIP file without authentication.CVE-2026-48908.py:52-59
  • Verifies successful exploitation by sending a GET request to the uploaded shell and checking for the presence of the string 'Shinday' in the response.CVE-2026-48908.py:61-68
  • Logs the URL of the successfully uploaded web shell to 'result.txt'.CVE-2026-48908.py:130-131
Safety-review evidence

Behaviors behind the backdoor verdict

Observables

Webshell Payload
Payload withheldThe active PHP webshell embedded in the uploaded ZIP. It displays server information and provides a file upload form, which is standard for a PoC demonstrating RCE.CVE-2026-48908.py:29
Commented Out Payload
Payload withheldA commented-out PHP payload that would fetch and execute remote code. It is never assigned to shell_bytes or written to the ZIP; it remains inert.CVE-2026-48908.py:31
Review boundaries

What the analysis did not establish

  • The evidence is limited to the provided source code and README; no runtime behavior, network traffic, or target system state was observed.
  • The script is written for Python 2.7, which is end-of-life, and its functionality on modern systems is not verified.
  • Review is based solely on the supplied text files; no dynamic analysis was performed.
  • The commented-out payload (line 31) references an external URL that could be malicious if activated, but the script does not use it.
Model interpretation

This review is limited to the supplied PoC code and context. It does not assert that the code works or is safe to execute.

GitHubcazzysoci/cve-2026-48908Repository PoCby cazzysociStars: 0Exploit3 files

55.4 KiB

GitHub

PoC details
Analysisdeepseek-v4-pro:cloud ·

Technical assessment

Python script that exploits CVE-2026-48908 in SP Page Builder for Joomla by uploading a crafted ZIP file containing a PHP webshell via the unauthenticated custom icon upload endpoint, then checks for successful shell access.

Backdoor review

No backdoor observed in reviewed code

The PoC script exploits CVE-2026-48908 by uploading a ZIP containing a PHP webshell. The webshell provides file upload functionality on the target, which is the expected exploit behavior. No concealed backdoor, credential theft, persistence, or unrelated payload was observed.

ClassificationExploit
Model confidence98%
AuthenticationNot required
LanguagesPython
Target softwareSP Page Builder for Joomla
Attack typesRemote Code ExecutionUnrestricted File Upload
Evidence & reasoningClassification basis · observed behavior · safety review
Technical evidence

Classification basis and observed behavior

Classification basis

The script actively uploads a PHP webshell to a target server and verifies its execution, which constitutes exploitation rather than mere detection or scanning.

poc.py:75-104

Requirements

  • Target URL running vulnerable SP Page Builder extension (versions 1.0.0-6.6.1)poc.py:110-114
  • List of target URLs provided as input filepoc.py:139-140

Observed behavior

  • Constructs a ZIP archive containing a PHP webshell disguised as an icon font uploadpoc.py:31-49
  • Sends POST request to the vulnerable upload endpoint without authenticationpoc.py:51-58
  • Checks if the uploaded PHP shell is accessible and executable by verifying HTTP 200 response containing the marker 'Shinday'poc.py:60-67
  • Writes successfully exploited shell URLs to result.txtpoc.py:128-131
Safety-review evidence

Behaviors behind the backdoor verdict

Observables

Webshell
Payload withheldThe PHP payload embedded in the ZIP provides a file upload form on the compromised server. This is the intended exploit outcome for the CVE.poc.py:32
Exploit Mechanism
Payload withheldThe script uploads a crafted ZIP containing a PHP file to the vulnerable endpoint, consistent with the described arbitrary file upload vulnerability.poc.py:51-58poc.py:110-115
Review boundaries

What the analysis did not establish

  • Only one text file (poc.py) was provided; two additional files in the repository were omitted from the evidence packet.
  • The evidence packet reports complete_artifact_coverage as false, indicating not all repository content was included.
  • Two additional files in the repository (total 3 files) were not provided as text and were not analyzed. Their content is unknown, but the PoC script itself shows no backdoor behavior.
Model interpretation

This review is limited to the supplied PoC code and context. It does not assert that the code works or is safe to execute.

GitHubg0thamRabb1t/CVE-2026-48908-joomla-sp-page-builder-detectionRepository PoCby g0thamRabb1tStars: 0Not analyzed9 files

991.2 KiB

GitHub

PoC details
GitHubimXur/CVE-2026-48908-Joomla-SP-Page-Builder-RCERepository PoCby imXurStars: 2Writeup2 files

5.4 KiB

GitHub

PoC details
Analysisdeepseek-v4-pro:cloud ·

Technical assessment

A technical writeup describing payload withheld, an unauthenticated arbitrary file upload vulnerability in JoomShaper SP Page Builder. The document provides a vulnerability analysis, metrics, root cause explanation, and mitigation guidance but contains no exploit or scanner code.

Backdoor review

No backdoor observed in reviewed code

The supplied evidence consists solely of a README.md file containing a technical vulnerability analysis and mitigation guidance for payload withheld. No executable code, scripts, commands, or deceptive payloads are present. The content is purely informational and does not exhibit any backdoor or harmful behavior.

ClassificationWriteup
Model confidence95%
AuthenticationNot required
LanguagesMarkdown
Target softwareJoomShaper SP Page Builder
Attack typesRemote Code ExecutionArbitrary File Upload
Evidence & reasoningClassification basis · observed behavior · safety review
Technical evidence

Classification basis and observed behavior

Classification basis

The artifact is a README.md file containing a vulnerability analysis, diagrams, and mitigation advice. It does not include any executable code, proof-of-concept script, or scanner logic. The content is purely descriptive and educational, fitting the definition of a writeup.

README.md:1-129

Requirements

  • Target must be running a vulnerable version of JoomShaper SP Page Builder (1.0.0-6.6.1).README.md:21

Observed behavior

  • Describes an unauthenticated POST request to an upload controller that writes a malicious file to a public web directory, followed by a GET request to execute the uploaded code.README.md:69-75
  • Explains that the upload endpoint lacks authorization checks and relies on permissive extension validation.README.md:83-85
Safety-review evidence

Behaviors behind the backdoor verdict

Observables

Vulnerability Report
Payload withheldThe artifact is a documentation-only repository describing an unauthenticated file upload vulnerability in JoomShaper SP Page Builder.README.md:1-129
Review boundaries

What the analysis did not establish

  • Only one of two text files in the repository (README.md) was included; the second file (likely a license or similar) was omitted, but its absence does not affect classification as no exploit or scanner code is indicated.
  • The analysis is based solely on the supplied text content; no dynamic execution or verification was performed.
  • One additional file (total 2 files in artifact) was omitted from the text evidence packet; its metadata indicates it is a non-text file (likely an image or binary) and was not analyzed. Its content could not be reviewed.
  • The review is limited to the static content of the provided evidence; no dynamic analysis or execution was performed.
Model interpretation

This review is limited to the supplied PoC code and context. It does not assert that the code works or is safe to execute.

GitHubyora1928/CVE-2026-48908-by-yoraRepository PoCby yora1928Stars: 1Exploit6 files

35.7 KiB

GitHub

PoC details
Analysisdeepseek-v4-pro:cloud ·

Technical assessment

The artifact is a Python-based tool that detects vulnerable Joomla SP Page Builder instances (CVE-2026-48908) and, when the --exploit flag is used, actively uploads a PHP webshell to achieve remote code execution. The scanner.py file contains a complete Exploiter class that builds a ZIP archive with a PHP payload, uploads it to the vulnerable endpoint, and executes commands on the target.

Backdoor review

No backdoor observed in reviewed code

The repository contains a scanner and PoC for CVE-2026-48908. The Python code (scanner.py) performs detection, version fingerprinting, and an optional adaptive exploit that uploads a PHP webshell to confirm RCE. The webshell is token-protected and executes only the command supplied via the 'c' parameter. No concealed backdoor, credential theft, persistence mechanism, or unrelated payload was observed. The tool's behavior is consistent with its stated purpose of vulnerability validation.

ClassificationExploit
Model confidence95%
AuthenticationNot required
LanguagesPython
Target softwareJoomlaSP Page Builder
Attack typesRemote Code ExecutionUnrestricted File Upload
Evidence & reasoningClassification basis · observed behavior · safety review
Technical evidence

Classification basis and observed behavior

Classification basis

The scanner.py file contains a complete Exploiter class that actively uploads a PHP payload and executes commands on the target, which is the definition of an exploit. The README.md describes the tool as a 'Scanner + PoC (Safe Exploit)' and provides instructions for using the --exploit flag to achieve RCE.

scanner.py:319-428README.md:2README.md:97-101

Requirements

  • Target must be running a vulnerable version of SP Page Builder (<=6.6.1) with the uploadCustomIcon endpoint accessible without authentication.scanner.py:37scanner.py:44

Observed behavior

  • The tool fingerprints the target to detect Joomla and SP Page Builder, then validates the vulnerable endpoint. If the --exploit flag is set and the target is classified as CONFIRMED, it attempts to upload a ZIP file containing a PHP webshell via the asset.uploadCustomIcon endpoint. It then accesses the uploaded shell to execute a test command (echo SPPB-RCE-$((7*6))) and confirms RCE if the output contains 'SPPB-RCE-42'.scanner.py:319-428scanner.py:455-473
  • The exploit attempts multiple PHP file extensions and a .htaccess trick to bypass upload filters.scanner.py:383-390
  • The uploaded PHP shell is token-protected and executes arbitrary system commands passed via the 'c' GET parameter.scanner.py:325-326
Safety-review evidence

Behaviors behind the backdoor verdict

Observables

Webshell Upload
Payload withheldThe exploit uploads a PHP file that executes arbitrary commands, but this is the expected PoC behavior for demonstrating RCE. The shell is token-protected and only runs commands passed via the 'c' parameter.scanner.py:325-326
Command Execution
Payload withheldThe exploit verifies RCE by executing a harmless arithmetic command. This is a standard PoC technique and does not indicate malicious intent.scanner.py:408
Cleanup Instructions
Payload withheldThe tool provides manual cleanup instructions rather than automatically deleting files, which is a responsible disclosure practice.scanner.py:430-439
Review boundaries

What the analysis did not establish

  • The evidence packet reports complete_artifact_coverage as false, indicating that not all files from the repository were included. Three text files (README.md, requirements.txt, scanner.py) are provided, but three additional files are omitted. The omitted files are described as 'detection/', 'poc/', and 'reports/' directories in the README, but their contents are unknown and could contain additional exploit or scanner code.
  • Three files (SECURITY.md, LICENSE, and directories detection/, poc/, reports/) were not included in the text evidence; their content is unknown. However, the primary executable logic is in scanner.py, which was fully reviewed.
  • Binary content was not analyzed, but no binary files were identified in the artifact.
Model interpretation

This review is limited to the supplied PoC code and context. It does not assert that the code works or is safe to execute.

Nuclei templates

1
ProjectDiscoveryCRITICALJoomla SP Page Builder <= 6.6.1 - Unauthenticated Arbitrary File Upload RCECVSS 9.8

SP Page Builder for Joomla contains an unrestricted file upload vulnerability allowing unauthenticated users to upload and execute arbitrary PHP code, exploit requires no authentication.

Impact

Unauthenticated attackers can upload and execute arbitrary PHP code, leading to full server compromise.

Remediation

Update to the latest version of SP Page Builder for Joomla.

WeaknessesCWE-284
Authors0x_Akoko
Template tagscvecve2026joomlasppagebuilderrcefile-uploadintrusivekevvkev
CVSS vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Shodan: http.html:"com_sppagebuilder"
FOFA: body="com_sppagebuilder"

Source: ProjectDiscovery

References

6