{"id":"CVE-2026-54056","summary":"Kitty has an arbitrary file overwrite via symlink following in `kitten dnd` remote drop staging","details":"Kitty is a cross-platform GPU based terminal. In versions 0.47.0 and 0.47.1, `kitten dnd` can allow a malicious remote drag-and-drop source to overwrite or truncate arbitrary files writable by the local kitty user. Remote `text/uri-list` drops are staged in a temporary directory, but on case-sensitive filesystems duplicate remote basenames are not de-duplicated. An attacker can first create a staged symlink and then send a same-name regular-file entry. The regular-file write uses `utils.CreateAt()` / `openat(O_RDWR|O_CREAT|O_TRUNC)` without `O_NOFOLLOW`, so it follows the attacker-created symlink and writes outside the staging directory before final overwrite confirmation runs. This appears related in class to the file-transfer symlink advisory, but it is a different bug: it affects `kitten dnd` remote drag-and-drop staging, uses different vulnerable code (`kittens/dnd/drop.go` and `tools/utils/file_at_fd.go`), and reproduces on commit `4aa4a5c0567a92553a8c20a88a4352da637fca5d`, after the file-transfer `O_NOFOLLOW` fix. Version 0.47.2 patches the issue.","aliases":["GHSA-r892-cv7q-fw8x"],"modified":"2026-08-12T04:18:09.660396421Z","published":"2026-06-12T20:06:06.437Z","database_specific":{"cna_assigner":"GitHub_M","cwe_ids":["CWE-59"],"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/54xxx/CVE-2026-54056.json"},"references":[{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/54xxx/CVE-2026-54056.json"},{"type":"ADVISORY","url":"https://github.com/kovidgoyal/kitty/security/advisories/GHSA-r892-cv7q-fw8x"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-54056"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/kovidgoyal/kitty","events":[{"introduced":"eadec09d499b6a1332fc75960a51abb1645d26ab"},{"fixed":"d20fe4d4b5860b77f507317ac0bf39242725d1ae"}],"database_specific":{"extracted_events":[{"introduced":"0.47.0"},{"fixed":"0.47.2"}],"source":["AFFECTED_FIELD","CPE_RANGE"],"cpe":"cpe:2.3:a:kovidgoyal:kitty:*:*:*:*:*:*:*:*"}}],"versions":["v0.47.0","v0.47.1"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-54056.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:N/I:H/A:L"}]}