CVE Vulnerabilities

CVE-2024-43374

Use After Free

Published: Aug 16, 2024 | Modified: Aug 25, 2025
CVSS 3.x
4.7
MEDIUM
Source:
NVD
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H
CVSS 2.x
RedHat/V2
RedHat/V3
3.3 LOW
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:L
Ubuntu
MEDIUM

The UNIX editor Vim prior to version 9.1.0678 has a use-after-free error in argument list handling. When adding a new file to the argument list, this triggers Buf* autocommands. If in such an autocommand the buffer that was just opened is closed (including the window where it is shown), this causes the window structure to be freed which contains a reference to the argument list that we are actually modifying. Once the autocommands are completed, the references to the window and argument list are no longer valid and as such cause an use-after-free. Impact is low since the user must either intentionally add some unusual autocommands that wipe a buffer during creation (either manually or by sourcing a malicious plugin), but it will crash Vim. The issue has been fixed as of Vim patch v9.1.0678.

Weakness

The product reuses or references memory after it has been freed. At some point afterward, the memory may be allocated again and saved in another pointer, while the original pointer references a location somewhere within the new allocation. Any operations using the original pointer are no longer valid because the memory “belongs” to the code that operates on the new pointer.

Affected Software

Name Vendor Start Version End Version
Vim Vim * 9.1.0678 (excluding)
Vim Ubuntu devel *
Vim Ubuntu esm-infra-legacy/trusty *
Vim Ubuntu esm-infra/bionic *
Vim Ubuntu esm-infra/focal *
Vim Ubuntu esm-infra/xenial *
Vim Ubuntu focal *
Vim Ubuntu jammy *
Vim Ubuntu noble *
Vim Ubuntu trusty/esm *
Vim Ubuntu upstream *

Potential Mitigations

References