Fix CVE(s): CVE-2026-73072, CVE-2026-73076, CVE-2026-73078
* SECURITY UPDATE: Heap buffer overflow in set_sofo() in src/spellfile.c: a crafted spell file with an SN_SAL section before an SN_SOFO section leaves sl_sal_first[] entries at -1, so the counting loop under-counts multi-byte mapping lists and later writes run past the end of an undersized heap allocation - debian/patches/CVE-2026-73072.patch: reset sl_sal_first[] with vim_memset() at the top of the SN_SOFO counting loop in set_sofo(), as done upstream in patch 9.2.0846, so entries left at -1 by a preceding set_sal_first() can no longer skew the item counts - CVE-2026-73072 * SECURITY UPDATE: Code execution via a crafted vimball archive: a member named .VimballRecord overwrites the un-vimball bookkeeping file with attacker-chosen Ex commands that are later :executed verbatim by vimball#RmVimball(), allowing arbitrary OS command execution through :! - debian/patches/CVE-2026-73076.patch: forbid extracting a vimball member named .VimballRecord, record file deletions with string() quoting, and make vimball#RmVimball() execute only whitelisted call delete('...') entries instead of the whole record line (upstream patch 9.2.0847 adapted to vimball v37) - CVE-2026-73076 * SECURITY UPDATE: Code injection in netrw bookmark, history and target menus: paths are interpolated into :execute'd :menu commands escaped with g:netrw_menu_escape, which lacks the Ex separator '|', so a crafted directory path breaks out of the :menu command and runs arbitrary Ex/shell commands - debian/patches/CVE
- Products
- vim, vim-athena, vim-common, vim-doc, vim-gtk, vim-gtk3, vim-gui-common, vim-nox, vim-runtime, vim-tiny, xxd
- Affected versions
- Not specified
- Fixed versions
- 2:8.1.0875-5+deb10u6+tuxcare.els27
- CVEs
- CVE-2026-73072, CVE-2026-73076, CVE-2026-73078
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 1 Nov 2026, 11:22 UTC · Revision 1
Source evidence
Fix CVE(s): CVE-2026-73072, CVE-2026-73076, CVE-2026-73078
core-osv · Original sourcePublished 31 Aug 2026, 10:12 UTC
* SECURITY UPDATE: Heap buffer overflow in set_sofo() in src/spellfile.c: a crafted spell file with an SN_SAL section before an SN_SOFO section leaves sl_sal_first[] entries at -1, so the counting loop under-counts multi-byte mapping lists and later writes run past the end of an undersized heap allocation - debian/patches/CVE-2026-73072.patch: reset sl_sal_first[] with vim_memset() at the top of the SN_SOFO counting loop in set_sofo(), as done upstream in patch 9.2.0846, so entries left at -1 by a preceding set_sal_first() can no longer skew the item counts - CVE-2026-73072 * SECURITY UPDATE: Code execution via a crafted vimball archive: a member named .VimballRecord overwrites the un-vimball bookkeeping file with attacker-chosen Ex commands that are later :executed verbatim by vimball#RmVimball(), allowing arbitrary OS command execution through :! - debian/patches/CVE-2026-73076.patch: forbid extracting a vimball member named .VimballRecord, record file deletions with string() quoting, and make vimball#RmVimball() execute only whitelisted call delete('...') entries instead of the whole record line (upstream patch 9.2.0847 adapted to vimball v37) - CVE-2026-73076 * SECURITY UPDATE: Code injection in netrw bookmark, history and target menus: paths are interpolated into :execute'd :menu commands escaped with g:netrw_menu_escape, which lacks the Ex separator '|', so a crafted directory path breaks out of the :menu command and runs arbitrary Ex/shell commands - debian/patches/CVE
osv:CLSA-2026-1788171117
vim
Fixed versions: 2:8.1.0875-5+deb10u6+tuxcare.els27
vim-athena
Fixed versions: 2:8.1.0875-5+deb10u6+tuxcare.els27
vim-common
Fixed versions: 2:8.1.0875-5+deb10u6+tuxcare.els27
vim-doc
Fixed versions: 2:8.1.0875-5+deb10u6+tuxcare.els27
vim-gtk
Fixed versions: 2:8.1.0875-5+deb10u6+tuxcare.els27
vim-gtk3
Fixed versions: 2:8.1.0875-5+deb10u6+tuxcare.els27
vim-gui-common
Fixed versions: 2:8.1.0875-5+deb10u6+tuxcare.els27
vim-nox
Fixed versions: 2:8.1.0875-5+deb10u6+tuxcare.els27
vim-runtime
Fixed versions: 2:8.1.0875-5+deb10u6+tuxcare.els27
vim-tiny
Fixed versions: 2:8.1.0875-5+deb10u6+tuxcare.els27
xxd
Fixed versions: 2:8.1.0875-5+deb10u6+tuxcare.els27
Complete source record
{
"id": "d37efb40ec77d4e1d6a6416b2a8b3c7cee209a8a9c9fc6c3a3e035e67301676e",
"url": "https://osv.dev/vulnerability/CLSA-2026-1788171117",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "Fix CVE(s): CVE-2026-73072, CVE-2026-73076, CVE-2026-73078",
"summary": "* SECURITY UPDATE: Heap buffer overflow in set_sofo() in src/spellfile.c: a crafted spell file with an SN_SAL section before an SN_SOFO section leaves sl_sal_first[] entries at -1, so the counting loop under-counts multi-byte mapping lists and later writes run past the end of an undersized heap allocation - debian/patches/CVE-2026-73072.patch: reset sl_sal_first[] with vim_memset() at the top of the SN_SOFO counting loop in set_sofo(), as done upstream in patch 9.2.0846, so entries left at -1 by a preceding set_sal_first() can no longer skew the item counts - CVE-2026-73072 * SECURITY UPDATE: Code execution via a crafted vimball archive: a member named .VimballRecord overwrites the un-vimball bookkeeping file with attacker-chosen Ex commands that are later :executed verbatim by vimball#RmVimball(), allowing arbitrary OS command execution through :! - debian/patches/CVE-2026-73076.patch: forbid extracting a vimball member named .VimballRecord, record file deletions with string() quoting, and make vimball#RmVimball() execute only whitelisted call delete('...') entries instead of the whole record line (upstream patch 9.2.0847 adapted to vimball v37) - CVE-2026-73076 * SECURITY UPDATE: Code injection in netrw bookmark, history and target menus: paths are interpolated into :execute'd :menu commands escaped with g:netrw_menu_escape, which lacks the Ex separator '|', so a crafted directory path breaks out of the :menu command and runs arbitrary Ex/shell commands - debian/patches/CVE",
"evidence": "osv:CLSA-2026-1788171117",
"products": [
{
"name": {
"value": "vim",
"evidence": "/affected/0/package/name"
},
"prerequisites": [],
"fixed_versions": [
{
"value": "2:8.1.0875-5+deb10u6+tuxcare.els27",
"evidence": "/affected/0/ranges"
}
],
"affected_versions": []
},
{
"name": {
"value": "vim-athena",
"evidence": "/affected/1/package/name"
},
"prerequisites": [],
"fixed_versions": [
{
"value": "2:8.1.0875-5+deb10u6+tuxcare.els27",
"evidence": "/affected/1/ranges"
}
],
"affected_versions": []
},
{
"name": {
"value": "vim-common",
"evidence": "/affected/2/package/name"
},
"prerequisites": [],
"fixed_versions": [
{
"value": "2:8.1.0875-5+deb10u6+tuxcare.els27",
"evidence": "/affected/2/ranges"
}
],
"affected_versions": []
},
{
"name": {
"value": "vim-doc",
"evidence": "/affected/3/package/name"
},
"prerequisites": [],
"fixed_versions": [
{
"value": "2:8.1.0875-5+deb10u6+tuxcare.els27",
"evidence": "/affected/3/ranges"
}
],
"affected_versions": []
},
{
"name": {
"value": "vim-gtk",
"evidence": "/affected/4/package/name"
},
"prerequisites": [],
"fixed_versions": [
{
"value": "2:8.1.0875-5+deb10u6+tuxcare.els27",
"evidence": "/affected/4/ranges"
}
],
"affected_versions": []
},
{
"name": {
"value": "vim-gtk3",
"evidence": "/affected/5/package/name"
},
"prerequisites": [],
"fixed_versions": [
{
"value": "2:8.1.0875-5+deb10u6+tuxcare.els27",
"evidence": "/affected/5/ranges"
}
],
"affected_versions": []
},
{
"name": {
"value": "vim-gui-common",
"evidence": "/affected/6/package/name"
},
"prerequisites": [],
"fixed_versions": [
{
"value": "2:8.1.0875-5+deb10u6+tuxcare.els27",
"evidence": "/affected/6/ranges"
}
],
"affected_versions": []
},
{
"name": {
"value": "vim-nox",
"evidence": "/affected/7/package/name"
},
"prerequisites": [],
"fixed_versions": [
{
"value": "2:8.1.0875-5+deb10u6+tuxcare.els27",
"evidence": "/affected/7/ranges"
}
],
"affected_versions": []
},
{
"name": {
"value": "vim-runtime",
"evidence": "/affected/8/package/name"
},
"prerequisites": [],
"fixed_versions": [
{
"value": "2:8.1.0875-5+deb10u6+tuxcare.els27",
"evidence": "/affected/8/ranges"
}
],
"affected_versions": []
},
{
"name": {
"value": "vim-tiny",
"evidence": "/affected/9/package/name"
},
"prerequisites": [],
"fixed_versions": [
{
"value": "2:8.1.0875-5+deb10u6+tuxcare.els27",
"evidence": "/affected/9/ranges"
}
],
"affected_versions": []
},
{
"name": {
"value": "xxd",
"evidence": "/affected/10/package/name"
},
"prerequisites": [],
"fixed_versions": [
{
"value": "2:8.1.0875-5+deb10u6+tuxcare.els27",
"evidence": "/affected/10/ranges"
}
],
"affected_versions": []
}
],
"severity": "unknown",
"structured": {
"id": "CLSA-2026-1788171117",
"aliases": [
"CLSA-2026-1788171117"
],
"affected": [
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
},
{
"fixed": "2:8.1.0875-5+deb10u6+tuxcare.els27"
}
]
}
],
"package": {
"name": "vim",
"purl": "pkg:deb/tuxcare/vim?distro=debian-10",
"ecosystem": "TuxCare:Debian:10"
},
"database_specific": {
"source": "https://github.com/cloudlinux/tuxcare-osv/tree/main/data/els_os/debian10els/CLSA-2026-1788171117.json"
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
},
{
"fixed": "2:8.1.0875-5+deb10u6+tuxcare.els27"
}
]
}
],
"package": {
"name": "vim-athena",
"purl": "pkg:deb/tuxcare/vim-athena?distro=debian-10",
"ecosystem": "TuxCare:Debian:10"
},
"database_specific": {
"source": "https://github.com/cloudlinux/tuxcare-osv/tree/main/data/els_os/debian10els/CLSA-2026-1788171117.json"
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
},
{
"fixed": "2:8.1.0875-5+deb10u6+tuxcare.els27"
}
]
}
],
"package": {
"name": "vim-common",
"purl": "pkg:deb/tuxcare/vim-common?distro=debian-10",
"ecosystem": "TuxCare:Debian:10"
},
"database_specific": {
"source": "https://github.com/cloudlinux/tuxcare-osv/tree/main/data/els_os/debian10els/CLSA-2026-1788171117.json"
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
},
{
"fixed": "2:8.1.0875-5+deb10u6+tuxcare.els27"
}
]
}
],
"package": {
"name": "vim-doc",
"purl": "pkg:deb/tuxcare/vim-doc?distro=debian-10",
"ecosystem": "TuxCare:Debian:10"
},
"database_specific": {
"source": "https://github.com/cloudlinux/tuxcare-osv/tree/main/data/els_os/debian10els/CLSA-2026-1788171117.json"
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
},
{
"fixed": "2:8.1.0875-5+deb10u6+tuxcare.els27"
}
]
}
],
"package": {
"name": "vim-gtk",
"purl": "pkg:deb/tuxcare/vim-gtk?distro=debian-10",
"ecosystem": "TuxCare:Debian:10"
},
"database_specific": {
"source": "https://github.com/cloudlinux/tuxcare-osv/tree/main/data/els_os/debian10els/CLSA-2026-1788171117.json"
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
},
{
"fixed": "2:8.1.0875-5+deb10u6+tuxcare.els27"
}
]
}
],
"package": {
"name": "vim-gtk3",
"purl": "pkg:deb/tuxcare/vim-gtk3?distro=debian-10",
"ecosystem": "TuxCare:Debian:10"
},
"database_specific": {
"source": "https://github.com/cloudlinux/tuxcare-osv/tree/main/data/els_os/debian10els/CLSA-2026-1788171117.json"
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
},
{
"fixed": "2:8.1.0875-5+deb10u6+tuxcare.els27"
}
]
}
],
"package": {
"name": "vim-gui-common",
"purl": "pkg:deb/tuxcare/vim-gui-common?distro=debian-10",
"ecosystem": "TuxCare:Debian:10"
},
"database_specific": {
"source": "https://github.com/cloudlinux/tuxcare-osv/tree/main/data/els_os/debian10els/CLSA-2026-1788171117.json"
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
},
{
"fixed": "2:8.1.0875-5+deb10u6+tuxcare.els27"
}
]
}
],
"package": {
"name": "vim-nox",
"purl": "pkg:deb/tuxcare/vim-nox?distro=debian-10",
"ecosystem": "TuxCare:Debian:10"
},
"database_specific": {
"source": "https://github.com/cloudlinux/tuxcare-osv/tree/main/data/els_os/debian10els/CLSA-2026-1788171117.json"
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
},
{
"fixed": "2:8.1.0875-5+deb10u6+tuxcare.els27"
}
]
}
],
"package": {
"name": "vim-runtime",
"purl": "pkg:deb/tuxcare/vim-runtime?distro=debian-10",
"ecosystem": "TuxCare:Debian:10"
},
"database_specific": {
"source": "https://github.com/cloudlinux/tuxcare-osv/tree/main/data/els_os/debian10els/CLSA-2026-1788171117.json"
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
},
{
"fixed": "2:8.1.0875-5+deb10u6+tuxcare.els27"
}
]
}
],
"package": {
"name": "vim-tiny",
"purl": "pkg:deb/tuxcare/vim-tiny?distro=debian-10",
"ecosystem": "TuxCare:Debian:10"
},
"database_specific": {
"source": "https://github.com/cloudlinux/tuxcare-osv/tree/main/data/els_os/debian10els/CLSA-2026-1788171117.json"
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
},
{
"fixed": "2:8.1.0875-5+deb10u6+tuxcare.els27"
}
]
}
],
"package": {
"name": "xxd",
"purl": "pkg:deb/tuxcare/xxd?distro=debian-10",
"ecosystem": "TuxCare:Debian:10"
},
"database_specific": {
"source": "https://github.com/cloudlinux/tuxcare-osv/tree/main/data/els_os/debian10els/CLSA-2026-1788171117.json"
}
}
],
"modified": "2026-10-26T09:31:53.125401821Z",
"provider": "osv",
"upstream": [
"CVE-2026-73072",
"CVE-2026-73076",
"CVE-2026-73078"
],
"references": [
"https://errata.tuxcare.com/els_os/debian10els/CLSA-2026-1788171117.html",
"https://nvd.nist.gov/vuln/detail/CVE-2026-73072",
"https://nvd.nist.gov/vuln/detail/CVE-2026-73076",
"https://nvd.nist.gov/vuln/detail/CVE-2026-73078"
]
},
"related_cves": [
{
"value": "CVE-2026-73072",
"evidence": "/upstream"
},
{
"value": "CVE-2026-73076",
"evidence": "/upstream"
},
{
"value": "CVE-2026-73078",
"evidence": "/upstream"
}
],
"security_relevant": true,
"severity_evidence": null
},
"source_id": "core-osv",
"document_id": 448828,
"published_at": "2026-08-31T10:12:09+00:00"
}