Description
Etherpad is a real-time collaborative editor. Prior to 3.1.0, src/node/handler/ImportHandler.ts and src/node/handler/ExportHandler.ts derive temporary filenames from Math.random() and place them in os.tmpdir(). On a host with a shared world-writable temporary directory, a local unprivileged attacker who predicts a filename can precreate a symbolic link to a file writable by the Etherpad process. Subsequent import or export operations can follow the link through fs.writeFile, fs.rename, or document-conversion output and overwrite the target with partially attacker-controlled content. This issue is fixed in version 3.1.0.
Published: 2026-08-19
Score: 4.2 Medium
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

Etherpad’s import and export handlers generate temporary filenames by calling Math.random() and place them in the operating system’s temporary directory. On hosts where /tmp is shared and world‑writable, an unprivileged local attacker can predict a filename and pre‑create a symbolic link to a file that the Etherpad process can write. When an import or export operation follows this link, the file targeted by the link is overwritten with attacker‑controlled content. This flaw allows attackers to modify Etherpad’s own files or configuration files, potentially enabling code injection or privilege escalation within the application. The weakness is reflected in CWE‑377 and CWE‑59, and the CVSS score of 4.2 indicates a low to moderate severity.

Affected Systems

Etherpad instances running any release prior to 3.1.0 are affected. The flaw exists in the ImportHandler and ExportHandler modules and affects all users who may trigger import or export operations on a host with a shared temporary directory.

Risk and Exploitability

The likely attack vector is Local (L), as the attacker must be able to create a symbolic link in the shared temporary directory. The CVSS score of 4.2 indicates a low to moderate severity, and the absence of an EPSS score together with no listing in the CISA KEV catalog suggests limited exploitation activity. In environments where Etherpad runs on a host with a world‑writable /tmp directory, the risk of an attacker overwriting critical application files is moderate; however, systems that restrict /tmp or isolate user permissions mitigate this threat.

Generated by OpenCVE AI on August 20, 2026 at 12:11 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Update Etherpad to version 3.1.0 or later to eliminate the use of Math.random() for temp file names.
  • Configure the system so that /tmp is not world‑writable or mount it with the "nosuid" or "nodev" options; alternatively, set a secure temporary directory using the OS environment variable or Etherpad configuration.
  • Review permissions on critical Etherpad files and directories to ensure only the application process can write to them, and monitor for any unexpected file modification events.

Generated by OpenCVE AI on August 20, 2026 at 12:11 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-2jwf-f4xq-f24h ep_etherpad-lite: Import/export uses Math.random() for temp file paths; predictable paths on shared /tmp enable symlink-based file overwrite
History

Tue, 25 Aug 2026 14:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

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


Fri, 21 Aug 2026 13:30:00 +0000

Type Values Removed Values Added
First Time appeared Etherpad
Etherpad etherpad
Vendors & Products Etherpad
Etherpad etherpad

Wed, 19 Aug 2026 19:45:00 +0000

Type Values Removed Values Added
Description Etherpad is a real-time collaborative editor. Prior to 3.1.0, src/node/handler/ImportHandler.ts and src/node/handler/ExportHandler.ts derive temporary filenames from Math.random() and place them in os.tmpdir(). On a host with a shared world-writable temporary directory, a local unprivileged attacker who predicts a filename can precreate a symbolic link to a file writable by the Etherpad process. Subsequent import or export operations can follow the link through fs.writeFile, fs.rename, or document-conversion output and overwrite the target with partially attacker-controlled content. This issue is fixed in version 3.1.0.
Title Etherpad: Import/export use Math.random() for temp file paths; predictable paths on shared /tmp enable symlink-based file overwrite
Weaknesses CWE-377
CWE-59
References
Metrics cvssV3_1

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


Subscriptions

Etherpad Etherpad
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-08-25T13:59:03.366Z

Reserved: 2026-06-16T14:41:54.578Z

Link: CVE-2026-55086

cve-icon Vulnrichment

Updated: 2026-08-25T13:58:58.589Z

cve-icon NVD

Status : Received

Published: 2026-08-19T20:17:17.520

Modified: 2026-08-25T14:16:52.193

Link: CVE-2026-55086

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-21T13:03:25Z

Weaknesses
  • CWE-377

    Insecure Temporary File

  • CWE-59

    Improper Link Resolution Before File Access ('Link Following')