{"id":"CVE-2025-26603","summary":"heap-use-after-free in function str_to_reg in vim/vim","details":"Vim is a greatly improved version of the good old UNIX editor Vi. Vim allows to redirect screen messages using the `:redir` ex command to register, variables and files. It also allows to show the contents of registers using the `:registers` or `:display` ex command. When redirecting the output of `:display` to a register, Vim will free the register content before storing the new content in the register. Now when redirecting the `:display` command to a register that is being displayed, Vim will free the content while shortly afterwards trying to access it, which leads to a use-after-free. Vim pre 9.1.1115 checks in the ex_display() function, that it does not try to redirect to a register while displaying this register at the same time. However this check is not complete, and so Vim does not check the `+` and `*` registers (which typically donate the X11/clipboard registers, and when a clipboard connection is not possible will fall back to use register 0 instead. In Patch 9.1.1115 Vim will therefore skip outputting to register zero when trying to redirect to the clipboard registers `*` or `+`. Users are advised to upgrade. There are no known workarounds for this vulnerability.","aliases":["GHSA-63p5-mwg2-787v"],"modified":"2026-05-18T05:59:25.063951190Z","published":"2025-02-18T19:04:24.273Z","database_specific":{"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2025/26xxx/CVE-2025-26603.json","cwe_ids":["CWE-416"],"cna_assigner":"GitHub_M"},"references":[{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2025/26xxx/CVE-2025-26603.json"},{"type":"ADVISORY","url":"https://github.com/vim/vim/security/advisories/GHSA-63p5-mwg2-787v"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2025-26603"},{"type":"ADVISORY","url":"https://security.netapp.com/advisory/ntap-20250306-0003/"},{"type":"FIX","url":"https://github.com/vim/vim/commit/c0f0e2380e5954f4a52a131bf6b8"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/vim/vim","events":[{"introduced":"0"},{"fixed":"8d081f0b687c418da8aa20da04bf5ca5f9d959b2"}]}],"database_specific":{"source":"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2025-26603.json"}}],"schema_version":"1.7.5","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:L/AC:H/PR:L/UI:R/S:U/C:L/I:L/A:L"}]}