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
rsfiles-CVE-2026-57827 — Unauthenticated File Upload → RCE PoC for CVE-2026-57827 (RSFiles! Joomla < 1.17.12). Authorized security research use only. | Kitploit
Tools/GitHubGitHub/mohammad-008/rsfiles-cve-2026-57827
Vulnerability ScannersExploitationWeb Application ExploitationInformation GatheringPayload Development
GitHubmohammad-008/rsfiles-cve-2026-57827

rsfiles-CVE-2026-57827

Unauthenticated File Upload → RCE PoC for CVE-2026-57827 (RSFiles! Joomla < 1.17.12). Authorized security research use only.

View Repository
921 month 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-57827 — RSFiles! Unauthenticated File Upload → RCE

Disclaimer — authorized use only. This is a proof-of-concept for security research and defensive testing. You are responsible for using it only on systems you own or have explicit written permission to test. Misuse against third parties without consent is illegal. See SECURITY.md for the responsible-disclosure stance.

Exploit + standalone detector for CVE-2026-57827 in the RSFiles! (com_rsfiles) component for Joomla, versions < 1.17.12 (fixed in 1.17.12, CVSS 9.8 / 10.0).

The frontend upload is split across two tasks:

  1. rsfiles.checkupload — pre-flight gate (permission + extension allow-list)
  2. rsfiles.upload — write method (no permission check, no file-type check, no CSRF)

The write task can be called directly, skipping the pre-flight gate, which lets an unauthenticated attacker upload an executable .php file into a public folder and run it → .

unauthenticated RCE

⚠️ What this project is

  • ✅ A clean, readable re-implementation of the described attack chain for researchers and defenders.
  • ✅ Includes a local mock server so you can validate the whole flow with zero risk to anything real.
  • ✅ Includes a detection-only mode that makes no upload at all.

Files

FilePurpose
cve_2026_57827.pyExploit + scanner + CLI (entry point)
rsfiles_detect.pyStandalone detection module (no exploit) — also has its own CLI
payload.pyModular, compact PHP payload builder
common.pyShared HTTP client, config, and helpers
mock_server.pySafe local simulation for testing

All modules must live in the same directory (they import each other).

Install

root@kitploit:~
python3 -m pip install -r requirements.txt   # or just: pip install requests

Usage

1 · Detection only (no upload, safe for reconnaissance)

root@kitploit:~
python rsfiles_detect.py -t example.com
root@kitploit:~
Host     : example.com
RSFiles! : YES v1.17.11
Protocol : https
Status   : VULNERABLE  (below 1.17.12)

Multi-host:

root@kitploit:~
python rsfiles_detect.py -f hosts.txt

2 · Full exploit (single target)

root@kitploit:~
python cve_2026_57827.py -t example.com

On success the tool prints the shell URL with its random token and the command output — that output is the proof of RCE.

3 · Mass scan + reports

root@kitploit:~
python cve_2026_57827.py -f targets.txt --threads 30 -o shells.txt --csv report.csv
FlagDescription
--threads NConcurrency (default 30)
--proxy URLRoute through a proxy (Burp/ZAP)
--timeout NPer-request timeout (seconds)
--no-cleanupKeep the uploaded shell (default: auto-delete after RCE)
-o FILESave RCE URLs
--csv FILEFull structured report
--debug / -vVerbose request-level logging

Local testing (zero risk)

root@kitploit:~
# Terminal 1 — start the mock (vulnerable)
python mock_server.py 8000 1.17.11

# Terminal 2 — scan it
python rsfiles_detect.py -t 127.0.0.1:8000
python cve_2026_57827.py -t 127.0.0.1:8000

1.17.11 / 1.17.10 = vulnerable · 1.17.12 = patched.

Design notes

  • Modular payload (payload.py): each behaviour (gate, upload, exec, delete, list) is one small function; exec-function names are base64-encoded so raw names like system don't appear in the file bytes.
  • Randomized benign filenames (e.g. cache7f31.php) instead of classic hidden dotfile shell names.
  • Incremental counters (O(1)) instead of re-scanning results.
  • Single-source URL parsing via common.base_of().

Credits / inspiration

Style modelled on public Joomla component-exploit collections (e.g. incredibleindishell/joomla-vulnerabilities) and the RSJoomla/mysites.guru advisory write-ups for this CVE.

License

MIT — see LICENSE. Research/defense use only.

Download Tool