Every CVE Search/ Get API key

CVE-2022-0417

Heap-based Buffer Overflow in vim/vim

8.4 HighFix available

Heap-based Buffer Overflow GitHub repository vim/vim prior to 8.2.

Attack profile

How easy it is to exploit

Attack vector
Local
Complexity
Low
Privileges needed
None
User interaction
None

What an attacker can affect

Confidentiality
High
Integrity
High
Availability
High

Exploit likelihood

1.53%Up 0.6 points since Feb 8, 2022
90%50%10%1%

What each source reports

CVE List Score used 8.4

Heap-based Buffer Overflow in vim/vim

Heap-based Buffer Overflow GitHub repository vim/vim prior to 8.2.

Record
CVE-2022-0417
CVSS 3.0
8.4 HighCVSS:3.0/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Weakness
CWE-122
Updated
2026-11-02
EUVDEUVD-2022-15559 8.4

Heap-based Buffer Overflow GitHub repository vim/vim prior to 8.2.

Record
EUVD-2022-15559
CVSS 3.0
8.4 HighCVSS:3.0/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Updated
2026-11-02
GitHub AdvisoriesGHSA-cj93-q2w3-fjxc 7.8

Heap-based Buffer Overflow in Conda vim prior to 8.2.

Heap-based Buffer Overflow in Conda vim prior to 8.2.

Record
GHSA-cj93-q2w3-fjxc
CVSS 3.1
7.8 HighCVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
Weakness
CWE-122, CWE-787
Updated
2026-11-02
NVD 7.8

Heap-based Buffer Overflow GitHub repository vim/vim prior to 8.2.

Record
CVE-2022-0417
CVSS 3.1
7.8 HighCVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
CVSS 3.0
8.4 HighCVSS:3.0/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
CVSS 2.0
6.8 MediumAV:N/AC:M/Au:N/C:P/I:P/A:P
Weakness
CWE-122, CWE-787
Updated
2026-11-02
OSVALPINE-CVE-2022-0417 7.8

Heap-based Buffer Overflow GitHub repository vim/vim prior to 8.2.

Record
ALPINE-CVE-2022-0417
CVSS 3.1
7.8 HighCVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
Updated
2026-11-03
OSVAZL-8461 7.8

CVE-2022-0417 affecting package vim for versions less than 8.2.4743-1

Heap-based Buffer Overflow GitHub repository vim/vim prior to 8.2.

Record
AZL-8461
CVSS 3.1
7.8 HighCVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
Updated
2026-11-02
Show 11 moreShow less
OSVBELL-CVE-2022-0417 7.8

CVE-2022-0417 does not affect BellSoft software

Record
BELL-CVE-2022-0417
CVSS 3.1
7.8 HighCVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
Updated
2026-11-02
OSV 8.4

Heap-based Buffer Overflow in vim/vim

Heap-based Buffer Overflow GitHub repository vim/vim prior to 8.2.

Record
CVE-2022-0417
CVSS 3.0
8.4 HighCVSS:3.0/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Weakness
CWE-122
Updated
2026-11-02
OSVDEBIAN-CVE-2022-0417 7.8

Heap-based Buffer Overflow GitHub repository vim/vim prior to 8.2.

Record
DEBIAN-CVE-2022-0417
CVSS 3.1
7.8 HighCVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
Updated
2026-11-03
OSVOESA-2022-1514 9.8

vim security update

Vim is an advanced text editor that seeks to provide the power of the de-facto Unix editor 'Vi', with a more complete feature set. Vim is a highly configurable text editor built to enable efficient text editing. It is an improved version of the vi editor distributed with most UNIX systems.

Security Fix(es):

Heap-based Buffer Overflow in GitHub repository vim/vim prior to 8.2.(CVE-2022-0261)

Heap-based Buffer Overflow in vim/vim prior to 8.2.(CVE-2022-0318)

Access of Memory Location Before Start of Buffer in GitHub repository vim/vim prior to 8.2.(CVE-2022-0351)

Heap-based Buffer Overflow in GitHub repository vim/vim prior to 8.2.(CVE-2022-0359)

Heap-based Buffer Overflow in GitHub repository vim/vim prior to 8.2.(CVE-2022-0361)

Out-of-bounds Read in GitHub repository vim/vim prior to 8.2.(CVE-2022-0368)

Heap-based Buffer Overflow in GitHub repository vim/vim prior to 8.2.(CVE-2022-0392)

Use After Free in GitHub repository vim/vim prior to 8.2.(CVE-2022-0413)

Stack-based Buffer Overflow in GitHub repository vim/vim prior to 8.2.(CVE-2022-0408)

Use After Free in Conda vim prior to 8.2.(CVE-2022-0443)

Heap-based Buffer Overflow in Conda vim prior to 8.2.(CVE-2022-0417)

vim is vulnerable to Heap-based Buffer Overflow(CVE-2022-0213)

Record
OESA-2022-1514
CVSS 3.1
9.8 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Updated
2026-11-02
OSVUBUNTU-CVE-2022-0417 7.8

Heap-based Buffer Overflow GitHub repository vim/vim prior to 8.2.

Record
UBUNTU-CVE-2022-0417
CVSS 3.1
7.8 HighCVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
CVSS 3.0
8.4 HighCVSS:3.0/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Updated
2026-11-02
OSVCLSA-2022-1645465475 No score

Fix CVE(s): CVE-2022-0408, CVE-2022-0417, CVE-2022-0443, CVE-2022-0413

  • SECURITY UPDATE: Stack corruption when looking for spell suggestions
    • debian/patches/CVE-2022-0408.patch: Prevent the depth increased too much, add a five second time limit to finding suggestions
    • CVE-2022-0408
  • SECURITY UPDATE: Using freed memory when substitute with function call
    • debian/patches/CVE-2022-0413.patch: Make a copy of the substituted text
    • CVE-2022-0413
  • SECURITY UPDATE: ':retab 0' may cause illegal memory access
    • debian/patches/CVE-2022-0417.patch: Limit the value of 'tabstop' to 10000
    • CVE-2022-0417
  • SECURITY UPDATE: Using freed memory with ':lopen' and ':bwipe'
    • debian/patches/CVE-2022-0443.patch: Do not use a wiped out buffer
    • CVE-2022-0443
Record
CLSA-2022-1645465475
Updated
2026-11-02
OSVCLSA-2022-1645465659 No score

Fixed CVEs in vim: CVE-2022-0408, CVE-2022-0413, CVE-2022-0417, CVE-2022-0443

  • CVE-2022-0408: fix stack corruption when looking for spell suggestions
  • CVE-2022-0413: fix using freed memory when substitute with function call
  • CVE-2022-0417: fix illegal memory access caused by ':retab 0'
  • CVE-2022-0443: fix using freed memory with ':lopen' and ':bwipe'
Record
CLSA-2022-1645465659
Updated
2026-11-02
OSVCLSA-2022-1645466182 No score

Fix of CVE: CVE-2022-0413, CVE-2022-0417, CVE-2022-0408, CVE-2022-0443

  • CVE-2022-0408: fix stack corruption when looking for spell suggestions
  • CVE-2022-0413: fix using freed memory when substitute with function call
  • CVE-2022-0417: fix illegal memory access caused by ':retab 0'
  • CVE-2022-0443: fix using freed memory with ':lopen' and ':bwipe'
Record
CLSA-2022-1645466182
Updated
2026-11-02
OSVMGASA-2022-0203 No score

Updated vim packages fix security vulnerability

vim is vulnerable to out of bounds read (CVE-2022-0213) Heap-based Buffer Overflow in block_insert() in src/ops.c (CVE-2022-0261) a heap-based OOB read of size 1 (CVE-2022-0128) heap-based buffer overflow in utf_head_off() in mbyte.c (CVE-2022-0318) access of memory location before start of buffer (CVE-2022-0351) heap-based buffer overflow in init_ccline() in ex_getln.c (CVE-2022-0359) Stack-based Buffer Overflow in spellsuggest.c (CVE-2022-0408) use after free in src/ex_cmds.c (CVE-2022-0413) out-of-bounds read in delete_buff_tail() in getchar.c (CVE-2022-0393) heap-based-buffer-overflow in ex_retab() of src/indent.c (CVE-2022-0417) heap-use-after-free in enter_buffer() of src/buffer.c (CVE-2022-0443) heap overflow in ex_retab() may lead to crash (CVE-2022-0572) Stack-based Buffer Overflow in vim prior to 8.2. (CVE-2022-0629) NULL Pointer Dereference in vim prior to 8.2 (CVE-2022-0696) buffer overflow (CVE-2022-0714) Use of Out-of-range Pointer Offset (CVE-2022-0729) Use of Out-of-range Pointer Offset in vim (CVE-2022-0685) Use of Out-of-range Pointer Offset in vim (CVE-2022-0554) Heap-based Buffer Overflow occurs in vim (CVE-2022-0943) heap buffer overflow in get_one_sourceline (CVE-2022-1160) use after free in utf_ptr2char (CVE-2022-1154) global heap buffer overflow in skip_range (CVE-2022-1381) Out-of-range Pointer Offset (CVE-2022-1420) heap-buffer-overflow in append_command of src/ex_docmd.c (CVE-2022-1616) heap-buffer-overflow in cmdline_erase_chars of ex_getln.c (CVE-2022-1619) NULL Pointer Dereference in vim_regexec_string() of regexp.c (CVE-2022-1620) heap buffer overflow (CVE-2022-1621) buffer over-read (CVE-2022-1629) NULL pointer dereference in vim_regexec_string() of regexp.c (CVE-2022-1674) a buffer over-read found in scriptfile.c (CVE-2022-1769) Heap-based Buffer Overflow in cindent.c (CVE-2022-1733)

Record
MGASA-2022-0203
Updated
2026-11-02
OSVopenSUSE-SU-2024:11812-1 No score

gvim-8.2.4286-1.1 on GA media

These are all security issues fixed in the gvim-8.2.4286-1.1 package on the GA media of openSUSE Tumbleweed.

Record
openSUSE-SU-2024:11812-1
Updated
2026-11-02
OSVUSN-5801-1 No score

vim vulnerabilities

It was discovered that Vim makes illegal memory calls when pasting brackets in Ex mode. An attacker could possibly use this to crash Vim, access or modify memory, or execute arbitrary commands. This issue affected only Ubuntu 20.04 and 22.04 (CVE-2022-0392)

It was discovered that Vim makes illegal memory calls when making certain retab calls. An attacker could possibly use this to crash Vim, access or modify memory, or execute arbitrary commands. (CVE-2022-0417)

Record
USN-5801-1
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
vim
Alpine:v3.12
before 8.2.4619-r0
8.2.4619-r0
vim
Alpine:v3.13
before 8.2.4619-r0
8.2.4619-r0
vim
Alpine:v3.14
before 8.2.4619-r0
8.2.4619-r0
vim
Alpine:v3.15
before 8.2.4619-r0
8.2.4619-r0
vim
Alpine:v3.16
before 8.2.4350-r0
8.2.4350-r0
vim
Alpine:v3.17
before 8.2.4350-r0
8.2.4350-r0
vim
Alpine:v3.18
before 8.2.4350-r0
8.2.4350-r0
vim
Alpine:v3.19
before 8.2.4350-r0
8.2.4350-r0
vim
Alpine:v3.20
before 8.2.4350-r0
8.2.4350-r0
vim
Alpine:v3.21
before 8.2.4350-r0
8.2.4350-r0
Show 46 moreShow less
Affected packages
PackageAffectedFixed
vim
Alpine:v3.22
before 8.2.4350-r0
8.2.4350-r0
vim
Alpine:v3.23
before 8.2.4350-r0
8.2.4350-r0
vim
Alpine:v3.24
before 8.2.4350-r0
8.2.4350-r0
vim
Azure Linux:2
before 8.2.4743-1
8.2.4743-1
vim
TuxCare:Ubuntu:16.04
From an advisory covering 4 CVEs
before 3:7.4.1689-3ubuntu1.5+tuxcare.els8
3:7.4.1689-3ubuntu1.5+tuxcare.els8
vim-athena
TuxCare:Ubuntu:16.04
From an advisory covering 4 CVEs
before 3:7.4.1689-3ubuntu1.5+tuxcare.els8
3:7.4.1689-3ubuntu1.5+tuxcare.els8
vim-athena-py2
TuxCare:Ubuntu:16.04
From an advisory covering 4 CVEs
before 3:7.4.1689-3ubuntu1.5+tuxcare.els8
3:7.4.1689-3ubuntu1.5+tuxcare.els8
vim-common
TuxCare:Ubuntu:16.04
From an advisory covering 4 CVEs
before 3:7.4.1689-3ubuntu1.5+tuxcare.els8
3:7.4.1689-3ubuntu1.5+tuxcare.els8
vim-doc
TuxCare:Ubuntu:16.04
From an advisory covering 4 CVEs
before 3:7.4.1689-3ubuntu1.5+tuxcare.els8
3:7.4.1689-3ubuntu1.5+tuxcare.els8
vim-gnome
TuxCare:Ubuntu:16.04
From an advisory covering 4 CVEs
before 3:7.4.1689-3ubuntu1.5+tuxcare.els8
3:7.4.1689-3ubuntu1.5+tuxcare.els8
vim-gnome-py2
TuxCare:Ubuntu:16.04
From an advisory covering 4 CVEs
before 3:7.4.1689-3ubuntu1.5+tuxcare.els8
3:7.4.1689-3ubuntu1.5+tuxcare.els8
vim-gtk
TuxCare:Ubuntu:16.04
From an advisory covering 4 CVEs
before 3:7.4.1689-3ubuntu1.5+tuxcare.els8
3:7.4.1689-3ubuntu1.5+tuxcare.els8
vim-gtk-py2
TuxCare:Ubuntu:16.04
From an advisory covering 4 CVEs
before 3:7.4.1689-3ubuntu1.5+tuxcare.els8
3:7.4.1689-3ubuntu1.5+tuxcare.els8
vim-gtk3
TuxCare:Ubuntu:16.04
From an advisory covering 4 CVEs
before 3:7.4.1689-3ubuntu1.5+tuxcare.els8
3:7.4.1689-3ubuntu1.5+tuxcare.els8
vim-gtk3-py2
TuxCare:Ubuntu:16.04
From an advisory covering 4 CVEs
before 3:7.4.1689-3ubuntu1.5+tuxcare.els8
3:7.4.1689-3ubuntu1.5+tuxcare.els8
vim-gui-common
TuxCare:Ubuntu:16.04
From an advisory covering 4 CVEs
before 3:7.4.1689-3ubuntu1.5+tuxcare.els8
3:7.4.1689-3ubuntu1.5+tuxcare.els8
vim-nox
TuxCare:Ubuntu:16.04
From an advisory covering 4 CVEs
before 3:7.4.1689-3ubuntu1.5+tuxcare.els8
3:7.4.1689-3ubuntu1.5+tuxcare.els8
vim-nox-py2
TuxCare:Ubuntu:16.04
From an advisory covering 4 CVEs
before 3:7.4.1689-3ubuntu1.5+tuxcare.els8
3:7.4.1689-3ubuntu1.5+tuxcare.els8
vim-runtime
TuxCare:Ubuntu:16.04
From an advisory covering 4 CVEs
before 3:7.4.1689-3ubuntu1.5+tuxcare.els8
3:7.4.1689-3ubuntu1.5+tuxcare.els8
vim-tiny
TuxCare:Ubuntu:16.04
From an advisory covering 4 CVEs
before 3:7.4.1689-3ubuntu1.5+tuxcare.els8
3:7.4.1689-3ubuntu1.5+tuxcare.els8
vim-X11
TuxCare:OracleLinux:6
From an advisory covering 4 CVEs
before 3:7.4.629-5.2.el6.tuxcare.els8
3:7.4.629-5.2.el6.tuxcare.els8
vim-common
TuxCare:OracleLinux:6
From an advisory covering 4 CVEs
before 3:7.4.629-5.2.el6.tuxcare.els8
3:7.4.629-5.2.el6.tuxcare.els8
vim-enhanced
TuxCare:OracleLinux:6
From an advisory covering 4 CVEs
before 3:7.4.629-5.2.el6.tuxcare.els8
3:7.4.629-5.2.el6.tuxcare.els8
vim-filesystem
TuxCare:OracleLinux:6
From an advisory covering 4 CVEs
before 3:7.4.629-5.2.el6.tuxcare.els8
3:7.4.629-5.2.el6.tuxcare.els8
vim-minimal
TuxCare:OracleLinux:6
From an advisory covering 4 CVEs
before 3:7.4.629-5.2.el6.tuxcare.els8
3:7.4.629-5.2.el6.tuxcare.els8
vim-X11
TuxCare:CentOS:6
From an advisory covering 4 CVEs
before 3:7.4.629-5.2.el6.tuxcare.els8
3:7.4.629-5.2.el6.tuxcare.els8
vim-common
TuxCare:CentOS:6
From an advisory covering 4 CVEs
before 3:7.4.629-5.2.el6.tuxcare.els8
3:7.4.629-5.2.el6.tuxcare.els8
vim-enhanced
TuxCare:CentOS:6
From an advisory covering 4 CVEs
before 3:7.4.629-5.2.el6.tuxcare.els8
3:7.4.629-5.2.el6.tuxcare.els8
vim-filesystem
TuxCare:CentOS:6
From an advisory covering 4 CVEs
before 3:7.4.629-5.2.el6.tuxcare.els8
3:7.4.629-5.2.el6.tuxcare.els8
vim-minimal
TuxCare:CentOS:6
From an advisory covering 4 CVEs
before 3:7.4.629-5.2.el6.tuxcare.els8
3:7.4.629-5.2.el6.tuxcare.els8
vim
Debian:12
before 2:8.2.4659-1
2:8.2.4659-1
vim
Debian:13
before 2:8.2.4659-1
2:8.2.4659-1
vim
Debian:14
before 2:8.2.4659-1
2:8.2.4659-1
vim
Debian:9
From an advisory covering 9 CVEs
before 2:8.0.0197-4+deb9u7, plus listed versions
2:8.0.0197-42:8.0.0197-4+deb9u12:8.0.0197-4+deb9u22:8.0.0197-4+deb9u32:8.0.0197-4+deb9u42:8.0.0197-4+deb9u52:8.0.0197-4+deb9u6
2:8.0.0197-4+deb9u7
vim
Debian:10
From an advisory covering 41 CVEs
before 2:8.1.0875-5+deb10u3, plus listed versions
2:8.1.0875-52:8.1.0875-5+deb10u12:8.1.0875-5+deb10u2
2:8.1.0875-5+deb10u3
vim
Debian:11
From an advisory covering 32 CVEs
before 2:8.2.2434-3+deb11u2, plus listed versions
2:8.2.2434-32:8.2.2434-3+deb11u1
2:8.2.2434-3+deb11u2
vim
Mageia:8
From an advisory covering 31 CVEs
before 8.2.4975-1.mga8
8.2.4975-1.mga8
vim
openEuler:20.03-LTS-SP1
From an advisory covering 12 CVEs
before 8.2-16.oe1
8.2-16.oe1
vim
openEuler:20.03-LTS-SP2
From an advisory covering 12 CVEs
before 8.2-16.oe1
8.2-16.oe1
vim
openEuler:20.03-LTS-SP3
From an advisory covering 12 CVEs
before 8.2-16.oe1
8.2-16.oe1
vim
Ubuntu:20.04:LTS
before 2:8.1.2269-1ubuntu5.11, plus listed versions
2:8.1.0875-5ubuntu22:8.1.0875-5ubuntu32:8.1.0875-5ubuntu42:8.1.2269-1ubuntu12:8.1.2269-1ubuntu4
Show 7 moreShow less
2:8.1.2269-1ubuntu52:8.1.2269-1ubuntu5.32:8.1.2269-1ubuntu5.42:8.1.2269-1ubuntu5.62:8.1.2269-1ubuntu5.72:8.1.2269-1ubuntu5.82:8.1.2269-1ubuntu5.9
2:8.1.2269-1ubuntu5.11
vim
Ubuntu:22.04:LTS
before 2:8.2.3995-1ubuntu2.3, plus listed versions
2:8.2.2434-3ubuntu32:8.2.2434-3ubuntu42:8.2.3565-1ubuntu12:8.2.3565-1ubuntu22:8.2.3565-1ubuntu3
Show 4 moreShow less
2:8.2.3565-1ubuntu52:8.2.3995-1ubuntu12:8.2.3995-1ubuntu22:8.2.3995-1ubuntu2.1
2:8.2.3995-1ubuntu2.3
vim
Ubuntu:18.04:LTS
From an advisory covering 2 CVEs
before 2:8.0.1453-1ubuntu1.10, plus listed versions
2:8.0.0197-4ubuntu52:8.0.1144-1ubuntu12:8.0.1401-1ubuntu12:8.0.1401-1ubuntu22:8.0.1401-1ubuntu3
Show 8 moreShow less
2:8.0.1453-1ubuntu12:8.0.1453-1ubuntu1.12:8.0.1453-1ubuntu1.32:8.0.1453-1ubuntu1.42:8.0.1453-1ubuntu1.62:8.0.1453-1ubuntu1.72:8.0.1453-1ubuntu1.82:8.0.1453-1ubuntu1.9
2:8.0.1453-1ubuntu1.10
vim
Ubuntu:20.04:LTS
From an advisory covering 2 CVEs
before 2:8.1.2269-1ubuntu5.11, plus listed versions
2:8.1.0875-5ubuntu22:8.1.0875-5ubuntu32:8.1.0875-5ubuntu42:8.1.2269-1ubuntu12:8.1.2269-1ubuntu4
Show 7 moreShow less
2:8.1.2269-1ubuntu52:8.1.2269-1ubuntu5.32:8.1.2269-1ubuntu5.42:8.1.2269-1ubuntu5.62:8.1.2269-1ubuntu5.72:8.1.2269-1ubuntu5.82:8.1.2269-1ubuntu5.9
2:8.1.2269-1ubuntu5.11
vim
Ubuntu:22.04:LTS
From an advisory covering 2 CVEs
before 2:8.2.3995-1ubuntu2.3, plus listed versions
2:8.2.2434-3ubuntu32:8.2.2434-3ubuntu42:8.2.3565-1ubuntu12:8.2.3565-1ubuntu22:8.2.3565-1ubuntu3
Show 4 moreShow less
2:8.2.3565-1ubuntu52:8.2.3995-1ubuntu12:8.2.3995-1ubuntu22:8.2.3995-1ubuntu2.1
2:8.2.3995-1ubuntu2.3
vim
openSUSE:Tumbleweed
From an advisory covering 3 CVEs
before 8.2.4286-1.1
8.2.4286-1.1

History

History
RecordedChangedSources
affected, factsOSV
affectedOSV
first indexedCVE List, EUVD, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2022-0417 is a high vulnerability (CVSS 8.4) in Vim, published February 1, 2022. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 1.53%, the 74th percentile. Fixed in vim 8.2.4619-r0.

References

Show 52 moreShow less
MoveEnter Open