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: n/a
KEV: No
Impact: n/a
Action: n/a
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

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

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-08-31T20:25:27.456Z

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

Link: CVE-2026-81889

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

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

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

Link: CVE-2026-81889

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-31T21:45:04Z

Weaknesses
  • CWE-918

    Server-Side Request Forgery (SSRF)