Use After Free in Vim

CVE-2023-46246

Vim is an improved version of the good old UNIX editor Vi. Heap-use-after-free in memory allocated in the function `ga_grow_inner` in in the file `src/alloc.c` at line 748, which is freed in the file `src/ex_docmd.c` in the function `do_cmdline` at line 1010 and then used again in `src/cmdhist.c` at line 759. When using the `:history` command, it's possible that the provided argument overflows the accepted value. Causing an Integer Overflow and potentially later an use-after-free. This vulnerability has been patched in version 9.0.2068.

Vulnerability class: Integer Overflow

EPSS: 0.004 (29.3th percentile) — read the EPSS interpretation.

CVSS v3 metric

CVSS v3 base score 4.0 (Medium). Vector: CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L.

Affected products

  • Vim — versions <= 9.0.2067

Weakness classification (CWE)

References

Frequently asked questions

What is CVE-2023-46246?
CVE-2023-46246 is a medium-severity vulnerability in Vim, classified under Integer Overflow or Wraparound. CVSS score: 4.0/10. Published 2023-10-27.
How severe is CVE-2023-46246?
Medium severity. CVSS v3 base score is 4.0 out of 10.