2026-09-24 20:29CVE-2026-93353VulnCheck
PUBLISHED5.2CWE-59x_open-source

copyparty SFTP Volume Restriction Bypass via mkdir/rmdir/chattr Handlers

copyparty contains a volume restriction bypass vulnerability in its SFTP front end that allows authenticated SFTP users to create, remove, and truncate arbitrary paths outside permitted volume boundaries by exploiting three handlers that bypass the xvol volflag enforcement. The _mkdir, _rmdir, and _chattr handlers construct destination paths using vfs.get(), vn.canonical(), and os.path.join() without invoking the chk_ap access check, enabling attackers to traverse symlinks leaving a volume's top directory and perform unauthorized file creation, deletion, or truncation via SSH_FXP_SETSTAT operations on paths outside any volume the account is authorized to access.

Problem type

Affected products

9001

copyparty

<= 1.20.24 - AFFECTED

References

GitHub Security Advisories

GHSA-3465-46r4-pj75

copyparty contains a volume restriction bypass vulnerability in its SFTP front end that allows...

https://github.com/advisories/GHSA-3465-46r4-pj75

copyparty contains a volume restriction bypass vulnerability in its SFTP front end that allows authenticated SFTP users to create, remove, and truncate arbitrary paths outside permitted volume boundaries by exploiting three handlers that bypass the xvol volflag enforcement. The _mkdir, _rmdir, and _chattr handlers construct destination paths using vfs.get(), vn.canonical(), and os.path.join() without invoking the chk_ap access check, enabling attackers to traverse symlinks leaving a volume's top directory and perform unauthorized file creation, deletion, or truncation via SSH_FXP_SETSTAT operations on paths outside any volume the account is authorized to access.

JSON source

https://cveawg.mitre.org/api/cve/CVE-2026-93353
Click to expand
{
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "cveMetadata": {
    "cveId": "CVE-2026-93353",
    "assignerOrgId": "83251b91-4cc7-4094-a5c7-464a1b83ea10",
    "assignerShortName": "VulnCheck",
    "dateUpdated": "2026-09-24T20:29:48.722Z",
    "dateReserved": "2026-09-17T18:41:40.757Z",
    "datePublished": "2026-09-24T20:29:36.253Z",
    "state": "PUBLISHED"
  },
  "containers": {
    "cna": {
      "providerMetadata": {
        "orgId": "83251b91-4cc7-4094-a5c7-464a1b83ea10",
        "shortName": "VulnCheck",
        "dateUpdated": "2026-09-24T20:29:48.722Z"
      },
      "datePublic": "2026-09-24T00:00:00.000Z",
      "title": "copyparty SFTP Volume Restriction Bypass via mkdir/rmdir/chattr Handlers",
      "descriptions": [
        {
          "lang": "en",
          "value": "copyparty contains a volume restriction bypass vulnerability in its SFTP front end that allows authenticated SFTP users to create, remove, and truncate arbitrary paths outside permitted volume boundaries by exploiting three handlers that bypass the xvol volflag enforcement. The _mkdir, _rmdir, and _chattr handlers construct destination paths using vfs.get(), vn.canonical(), and os.path.join() without invoking the chk_ap access check, enabling attackers to traverse symlinks leaving a volume's top directory and perform unauthorized file creation, deletion, or truncation via SSH_FXP_SETSTAT operations on paths outside any volume the account is authorized to access."
        }
      ],
      "affected": [
        {
          "vendor": "9001",
          "product": "copyparty",
          "collectionURL": "https://pypi.org/project/copyparty/",
          "repo": "https://github.com/9001/copyparty",
          "defaultStatus": "unknown",
          "versions": [
            {
              "version": "0",
              "status": "affected",
              "versionType": "semver",
              "lessThanOrEqual": "1.20.24"
            }
          ]
        }
      ],
      "problemTypes": [
        {
          "descriptions": [
            {
              "lang": "en",
              "description": "Improper Link Resolution Before File Access ('Link Following')",
              "cweId": "CWE-59",
              "type": "CWE"
            },
            {
              "lang": "en",
              "description": "Improper Protection of Alternate Path",
              "cweId": "CWE-424",
              "type": "CWE"
            }
          ]
        }
      ],
      "references": [
        {
          "url": "https://euriconicacio.github.io/blog/cve-2026-93353-a-volume-guard-enforced-one-call-site-at-a-time/",
          "name": "Researcher Disclosure",
          "tags": [
            "technical-description",
            "exploit"
          ]
        },
        {
          "url": "https://www.vulncheck.com/advisories/copyparty-sftp-volume-restriction-bypass-via-mkdir-rmdir-chattr-handlers",
          "tags": [
            "third-party-advisory"
          ]
        }
      ],
      "metrics": [
        {
          "format": "CVSS",
          "scenarios": [
            {
              "lang": "en",
              "value": "GENERAL"
            }
          ]
        },
        {
          "format": "CVSS",
          "scenarios": [
            {
              "lang": "en",
              "value": "GENERAL"
            }
          ],
          "cvssV3_1": {
            "version": "3.1",
            "vectorString": "CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:H/A:N",
            "attackVector": "NETWORK",
            "attackComplexity": "HIGH",
            "privilegesRequired": "LOW",
            "userInteraction": "NONE",
            "scope": "UNCHANGED",
            "confidentialityImpact": "NONE",
            "integrityImpact": "HIGH",
            "availabilityImpact": "NONE",
            "baseScore": 5.3,
            "baseSeverity": "MEDIUM"
          }
        }
      ],
      "credits": [
        {
          "lang": "en",
          "value": "euriconicacio",
          "type": "finder"
        }
      ],
      "tags": [
        "x_open-source"
      ]
    }
  }
}