Double Free in Vim

CVE-2025-55158

Vim is an open source, command line text editor. In versions from 9.1.1231 to before 9.1.1406, when processing nested tuples during Vim9 script import operations, an error during evaluation can trigger a double-free in Vim’s internal typed value (typval_T) management. Specifically, the clear_tv() function may attempt to free memory that has already been deallocated, due to improper lifetime handling in the handle_import / ex_import code paths. The vulnerability can only be triggered if a user explicitly opens and executes a specially crafted Vim script. This issue has been patched in version 9.1.1406.

Vulnerability class: Double Free

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

CVSS v3 metric

CVSS v3 base score 8.8 (High). Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H.

Affected products

  • Vim — versions >= 9.1.1231, < 9.1.1406

Weakness classification (CWE)

References

Frequently asked questions

What is CVE-2025-55158?
CVE-2025-55158 is a high-severity vulnerability in Vim, classified under Double Free. CVSS score: 8.8/10. Published 2025-08-11.
How severe is CVE-2025-55158?
High severity. CVSS v3 base score is 8.8 out of 10.