Findings

CVE-2026-62268

borg extract might modify out-of-tree files when extracting maliciously crafted archives

Published Oct 15, 2026 · updated Oct 15, 2026

### Impact A maliciously crafted archive could contain a symlink (e.g. "evil" -> "/etc") followed by an item below it ("evil/passwd"), or an item whose path embeds ".." (e.g. "a/../../etc/passwd"). When extracting such items, borg followed the symlink / resolved the "..", so it could delete or overwrite files outside the extraction directory. In a quite similar scenario, a crafted archive could contain a slave hardlink item with the hardlink source pointing outside the extraction directory. When extracting such an item, borg would hard-link the outside and the inside item. Note: that sounds bad, but it is no big issue in practice: to create such a malicious archive, the attacker would need repository access and (for encrypted or authenticated repos) also the borg key and passphrase. Affected: likely all borg releases before 1.4.5 (and also all borg 2.0.0 betas before b22). ### Patches - 1.4.x release series: fix released with 1.4.5. commits 3e9ed6d1ad6d3531b39c07b8ef3ecf41fce4437f and 141888f2fabcd57a300547c2aa63212cb213924d. - 1.2.x release series: no new releases any more, fix commits available on 1.2-maint branch: 0ac568e290518c3bbe781459978720dde7fab224 and d907f2cb57337041c4fa55ca4682895535e5076b - 2.0.0 betas: fix will be in 2.0.0b22, fix commits on master branch: 2d632531028b09da8ab5d1450f89bebcc205d640 and 4f37fdfed10b50559a0dd333b0d5581c642af329 ### Workarounds For encrypted or authenticated repositories, do not share borg key and passphrase with potential attackers. For all kinds of repositories, do not share repository access with potential attackers. Usually, the repository access is protected by means outside of borg; e.g. a ssh key for remote repositories or physical access to local storage media. ### References This issue was first discovered by AI in a private code security review initiated by @ThomasWaldmann. A few days later, it was also independently reported to @ThomasWaldmann by: - Michael Head (machin0r) - Chinnapak Charoensiri [Github: Ziim-ei

Code

The project this record applies to. Exploit listings stay in References.

Timeline

Detection, updates, and resolution for this record.

  1. Oct 15, 2026 · GitHub Advisory Database

    Detected

    ### Impact A maliciously crafted archive could contain a symlink (e.g. "evil" -> "/etc") followed by an item below it ("evil/passwd"), or an item whose path embeds ".." (e.g. "a/../../etc/passwd"). When extracting such items, borg followed the symlink / resolved the "..", so it could delete or overwrite files outside the extraction directory. In a quite similar scenario, a crafted archive could co

  2. Oct 15, 2026 · GitHub Advisory Database

    Fix available

    borgbackup fixed in 1.4.5; borgbackup fixed in 2.0.0b22

  3. Oct 15, 2026 · GitHub Advisory Database

    Fix available

    borgbackup fixed in 1.4.5

  4. Oct 15, 2026 · GitHub Advisory Database

    Fix available

    borgbackup fixed in 2.0.0b22

  5. Oct 15, 2026 · GitHub Advisory Database

    Updated

    ### Impact A maliciously crafted archive could contain a symlink (e.g. "evil" -> "/etc") followed by an item below it ("evil/passwd"), or an item whose path embeds ".." (e.g. "a/../../etc/passwd"). When extracting such items, borg followed the symlink / resolved the "..", so it could delete or overwrite files outside the extraction directory. In a quite similar scenario, a crafted archive could co

Affected

  • PyPI borgbackup0 → 1.4.5
  • PyPI borgbackup2.0.0b1 → 2.0.0b22
  • pypi borgbackupversion unspecified

Sources

  • CVE.orgVulnerability recordCVE-2026-62268

    Official CVE identifier

    cve.org
  • GitHub Advisory DatabasePackage advisoryGHSA-gfp8-w835-v44j

    GitHub Advisory Database record mirrored by OSV.

    github.com
  • GitLab Advisory DatabasePackage advisoryCVE-2026-62268

    A maliciously crafted archive could contain a symlink (e.g. "evil" -> "/etc") followed by an item below it ("evil/passwd"), or an item whose path embeds ".." (e.g. "a/../../etc/passwd"). When extracting such items, borg followed the symlink / resolved the "..", so it could delete or overwrite files outside the extraction directory. In a quite similar scenario, a crafted archive could contain a sla

    advisories.gitlab.com
  • OSV.devPackage advisoryGHSA-gfp8-w835-v44j

    borg extract might modify out-of-tree files when extracting maliciously crafted archives

    osv.dev

References