Description
A path traversal (ZIP slip) vulnerability exists in Epiphany when installing WebExtension packages from .xpi files.
In src/webextension/ephy-web-extension-manager.c, the decompress_xpi_thread() function extracts XPI archives (ZIP format) to disk using libarchive. For each archive entry, the output path is built by concatenating the intended extraction directory with the raw pathname from the archive:
full_path = g_build_filename(path, archive_entry_pathname(entry), NULL);
archive_entry_set_pathname(entry, full_path);
ret = archive_write_header(ext, entry);
The libarchive extraction options did not include ARCHIVE_EXTRACT_SECURE_NODOTDOT or ARCHIVE_EXTRACT_SECURE_SYMLINKS. As a result, archive entries containing parent-directory traversal sequences (for example "../../../../../.bashrc") are written outside the intended web_extensions extraction directory.
A malicious .xpi file can therefore overwrite arbitrary files writable by the user running Epiphany, such as ~/.bashrc, ~/.config/autostart/*.desktop, or ~/.ssh/authorized_keys. This can lead to persistent code execution on subsequent shell startup or GNOME login.
Exploitation requires the victim to install or open a crafted .xpi file. The reporter notes that opening an XPI can trigger extraction even when the WebExtensions feature is not enabled by default.
Affected versions: Epiphany >= 47.rc.
Fixed upstream in epiphany 50.6 and 49.9 via merge request !2143, which adds ARCHIVE_EXTRACT_SECURE_NODOTDOT and ARCHIVE_EXTRACT_SECURE_SYMLINKS to archive_write_disk_set_options().
Upstream report: https://gitlab.gnome.org/GNOME/epiphany/-/issues/2922
Published: n/a
Score: 5.5 Medium
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

Epiphany’s WebExtension installer unpacks .xpi files using libarchive without security options, allowing ZIP‑slip path traversal. Archive entries that contain sequences such as "../../.bashrc" are extracted outside the intended web‑extensions directory and can overwrite user‑writable files such as ~/.bashrc, ~/.ssh/authorized_keys, or autostart desktop files. The vulnerability is a CWE‑22 path traversal flaw that can give an attacker persistent code execution on subsequent shell or GNOME logon, provided a user installs or opens a crafted extension bundle. Attackers may also achieve privilege escalation by replacing or inserting executables that run with the user’s credentials.

Affected Systems

The vulnerability affects Epiphany Web Browser versions from 47.rc onwards until the security fix in release 49.9 and 50.6. All users running these releases on the GNOME desktop are potentially impacted.

Risk and Exploitability

The CVSS score of 5.5 indicates moderate severity. The EPSS score is not publicly available, and the issue is not listed in CISA’s KEV catalog, suggesting no large‑scale public exploitation yet. Exploitation requires user interaction: the victim must install or open a malicious .xpi file, which can be delivered through an untrusted extension source. If successful, the attacker can overwrite configuration files to achieve persistence on future logins. The attack vector is local with user‑initiated installation. Updated releases (49.9, 50.6) mitigate the flaw by enabling secure extraction options.

Generated by OpenCVE AI on August 25, 2026 at 14:10 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade Epiphany to version 50.6 or 49.9 or later, which includes secure extraction safeguards.
  • If an upgrade is unavailable, remove or audit the web‑extension extraction directory (typically in ~/.local/share/gnome-shell/extensions or the user’s home directory) to delete any unauthorized or malicious files such as .bashrc, authorized_keys, or startup .desktop entries.
  • Prevent installation of unknown or untrusted WebExtension .xpi files by disabling the extension installation feature or restricting usage to verified sources.

Generated by OpenCVE AI on August 25, 2026 at 14:10 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Tue, 25 Aug 2026 13:45:00 +0000

Type Values Removed Values Added
First Time appeared Gnome
Gnome epiphany
Vendors & Products Gnome
Gnome epiphany

Tue, 25 Aug 2026 12:15:00 +0000

Type Values Removed Values Added
Description A path traversal (ZIP slip) vulnerability exists in Epiphany when installing WebExtension packages from .xpi files. In src/webextension/ephy-web-extension-manager.c, the decompress_xpi_thread() function extracts XPI archives (ZIP format) to disk using libarchive. For each archive entry, the output path is built by concatenating the intended extraction directory with the raw pathname from the archive: full_path = g_build_filename(path, archive_entry_pathname(entry), NULL); archive_entry_set_pathname(entry, full_path); ret = archive_write_header(ext, entry); The libarchive extraction options did not include ARCHIVE_EXTRACT_SECURE_NODOTDOT or ARCHIVE_EXTRACT_SECURE_SYMLINKS. As a result, archive entries containing parent-directory traversal sequences (for example "../../../../../.bashrc") are written outside the intended web_extensions extraction directory. A malicious .xpi file can therefore overwrite arbitrary files writable by the user running Epiphany, such as ~/.bashrc, ~/.config/autostart/*.desktop, or ~/.ssh/authorized_keys. This can lead to persistent code execution on subsequent shell startup or GNOME login. Exploitation requires the victim to install or open a crafted .xpi file. The reporter notes that opening an XPI can trigger extraction even when the WebExtensions feature is not enabled by default. Affected versions: Epiphany >= 47.rc. Fixed upstream in epiphany 50.6 and 49.9 via merge request !2143, which adds ARCHIVE_EXTRACT_SECURE_NODOTDOT and ARCHIVE_EXTRACT_SECURE_SYMLINKS to archive_write_disk_set_options(). Upstream report: https://gitlab.gnome.org/GNOME/epiphany/-/issues/2922
Title epiphany: epiphany: path traversal in WebExtension XPI extraction (ZIP slip)
Weaknesses CWE-22
References
Metrics threat_severity

None

cvssV3_1

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

threat_severity

Moderate


cve-icon MITRE

No data.

cve-icon Vulnrichment

No data.

cve-icon NVD

No data.

cve-icon Redhat

Severity : Moderate

Publid Date: 2026-08-21T00:00:00Z

Links: CVE-2026-77679 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-08-25T14:15:05Z

Weaknesses
  • CWE-22

    Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')