Description
elFinder is an open-source file manager for web, written in JavaScript using jQuery UI. Prior to 2.1.70, elFinder URL uploads in php/elFinder.class.php can bypass server-side request forgery protections when PHP cURL is unavailable because validate_address() validates $info['ip'], but get_remote_contents() selects fsock_get_contents(), which connects to $arr['host'] and performs a second DNS resolution. An attacker able to submit a URL upload can use DNS rebinding to have the first resolution return a public address and the connection resolution return a loopback or private address, causing the internal HTTP response body to be stored as an uploaded file and made readable through elFinder. After a successful fetch, get_headers($url, true) separately requests the original hostname without reusing the validated and pinned connection, creating an additional blind server-side request forgery path even when curl_get_contents() is selected. This issue is fixed in version 2.1.70.
Published: 2026-08-31
Score: 8.6 High
EPSS: < 1% Very Low
KEV: No
Impact: SSRF (Server‑Side Request Forgery leading to internal data exposure)
Action: Apply patch
AI Analysis

Impact

elFinder, an open‑source web file manager, contains a flaw that lets an attacker use DNS rebinding on the URL upload feature to cause the server to resolve a hostname twice: the first lookup resolves to a public address, while the second, performed by the fallback fsock_get_contents function, resolves to a loopback or private address. The attacker can then have elFinder fetch internal resources, store the retrieved content as an uploaded file, and read it later through the manager. Additionally, the get_headers call demonstrates a blind SSRF path even when cURL is available, making the exposure broader than a single upload path.

Affected Systems

All Studio‑42 elFinder installations on versions prior to 2.1.70 are vulnerable. The issue is corrected in elFinder 2.1.70 and later releases.

Risk and Exploitability

The CVSS score of 8.6 indicates a high severity, and the lack of an EPSS score or KEV listing does not mitigate the risk of exploitation. Attackers can remotely trigger the vulnerability via the public upload endpoint without needing local credentials, enabling internal data exfiltration or potentially further lateral movement.

Generated by OpenCVE AI on August 31, 2026 at 21:44 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade elFinder to version 2.1.70 or higher, which removes the double DNS resolution and disables vulnerable fallback logic.
  • If an upgrade is not possible, disable the external URL‑upload feature or strictly restrict the list of hostnames that may be fetched, ensuring that only trusted domains are resolved and preventing DNS rebinding.
  • Make sure the PHP cURL extension is installed and enabled so that elFinder’s get_remote_contents() function uses cURL instead of the vulnerable fsock_get_contents() fallback.

Generated by OpenCVE AI on August 31, 2026 at 21:44 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-8x3q-jpjh-qh5c elFinder: SSRF protection bypass via DNS rebinding in the `fsock_get_contents()` fallback
History

Thu, 03 Sep 2026 18:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'poc', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Tue, 01 Sep 2026 12:45:00 +0000

Type Values Removed Values Added
First Time appeared Studio42
Studio42 elfinder
Vendors & Products Studio42
Studio42 elfinder

Mon, 31 Aug 2026 20:30:00 +0000

Type Values Removed Values Added
Description elFinder is an open-source file manager for web, written in JavaScript using jQuery UI. Prior to 2.1.70, elFinder URL uploads in php/elFinder.class.php can bypass server-side request forgery protections when PHP cURL is unavailable because validate_address() validates $info['ip'], but get_remote_contents() selects fsock_get_contents(), which connects to $arr['host'] and performs a second DNS resolution. An attacker able to submit a URL upload can use DNS rebinding to have the first resolution return a public address and the connection resolution return a loopback or private address, causing the internal HTTP response body to be stored as an uploaded file and made readable through elFinder. After a successful fetch, get_headers($url, true) separately requests the original hostname without reusing the validated and pinned connection, creating an additional blind server-side request forgery path even when curl_get_contents() is selected. This issue is fixed in version 2.1.70.
Title elFinder: SSRF protection bypass via DNS rebinding in the `fsock_get_contents()` fallback
Weaknesses CWE-918
References
Metrics cvssV3_1

{'score': 8.6, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:N'}


Subscriptions

Studio42 Elfinder
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-09-03T18:04:09.418Z

Reserved: 2026-08-27T17:48:42.123Z

Link: CVE-2026-81889

cve-icon Vulnrichment

Updated: 2026-09-03T18:03:42.847Z

cve-icon NVD

Status : Deferred

Published: 2026-08-31T21:17:52.460

Modified: 2026-09-09T21:09:13.080

Link: CVE-2026-81889

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-09-01T12:30:04Z

Weaknesses
  • CWE-918

    Server-Side Request Forgery (SSRF)