CVE-2019-12735

NameCVE-2019-12735
Descriptiongetchar.c in Vim before 8.1.1365 and Neovim before 0.3.6 allows remote attackers to execute arbitrary OS commands via the :source! command in a modeline, as demonstrated by execute in Vim, and assert_fails or nvim_input in Neovim.
SourceCVE (at NVD; CERT, LWN, oss-sec, fulldisc, bugtraq, EDB, Metasploit, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, Mageia, GitHub code/issues, web search, more)
ReferencesDLA-1871-1, DSA-4467-1, DSA-4487-1
NVD severityhigh (attack range: remote)
Debian Bugs930020, 930024

Vulnerable and fixed packages

The table below lists information on source packages.

Source PackageReleaseVersionStatus
neovim (PTS)stretch (security), stretch0.1.7-4+deb9u1fixed
buster0.3.4-3fixed
bullseye, sid0.3.8-1fixed
vim (PTS)jessie2:7.4.488-7+deb8u3vulnerable
jessie (security)2:7.4.488-7+deb8u4fixed
stretch (security), stretch2:8.0.0197-4+deb9u3fixed
buster2:8.1.0875-5fixed
bullseye, sid2:8.1.2136-1fixed

The information below is based on the following data on fixed versions.

PackageTypeReleaseFixed VersionUrgencyOriginDebian Bugs
neovimsource(unstable)0.3.4-3high930024
neovimsourcestretch0.1.7-4+deb9u1highDSA-4487-1
vimsource(unstable)2:8.1.0875-4high930020
vimsourcejessie2:7.4.488-7+deb8u4highDLA-1871-1
vimsourcestretch2:8.0.0197-4+deb9u2highDSA-4467-1

Notes

https://github.com/numirias/security/blob/master/doc/2019-06-04_ace-vim-neovim.md
vim patches: https://github.com/vim/vim/commit/53575521406739cf20bbe4e384d88e7dca11f040
neovim pull request: https://github.com/neovim/neovim/pull/10082

Search for package or bug name: Reporting problems