Skip to content
OpenAdvisories
Medium · 4.5 CVE-2024-43374 EUVD-2024-40255

Vim heap-use-after-free in src/arglist.c:207

Published Aug 15, 2024 · Updated Sep 20, 2024 · Assigned by GitHub_M

Description

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.

Affected products

VendorProductAffectedFixed
vim vim < 9.1.0678 —

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
Debian 14 vim 2:9.1.0698-1 —
Debian 13 vim 2:9.1.0698-1 —
Debian 12 vim No fix yet —
ReleasePackageFixed inAdvisory
Ubuntu 24.04 LTS vim 2:9.1.0016-1ubuntu7.2 USN-6993-1
Ubuntu 22.04 LTS vim 2:8.2.3995-1ubuntu2.18 USN-6993-1
Ubuntu 20.04 LTS vim 2:8.1.2269-1ubuntu5.24 USN-6993-1
Show 3 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
Ubuntu Pro 18.04 LTS vim 2:8.0.1453-1ubuntu1.13+esm9 USN-6993-1
Ubuntu Pro 16.04 LTS vim 2:7.4.1689-3ubuntu1.5+esm24 USN-6993-1
Ubuntu Pro 14.04 LTS vim 2:7.4.052-1ubuntu3.1+esm18 USN-6993-1
ReleasePackageFixed inAdvisory
SLES 15 SP6 vim 9.1.0836-150500.20.15.1 SUSE-SU-2024:4330-1
SLES 15 SP5 vim 9.1.0836-150500.20.15.1 SUSE-SU-2024:4330-1
SLES 12 SP5 vim 9.1.0836-17.38.1 SUSE-SU-2024:4409-1
Show 2 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
SLE Micro 6.0 vim 9.1.1101-1.1 SUSE-SU-2025:20128-1
SLE Micro 5.5 vim 9.1.0836-150500.20.15.1 SUSE-SU-2024:4330-1
ReleasePackageFixed inAdvisory
openSUSE Leap 15.6 vim 9.1.0836-150500.20.15.1 SUSE-SU-2024:4330-1
openSUSE Leap 15.5 vim 9.1.0836-150500.20.15.1 SUSE-SU-2024:4330-1
Show 1 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
openSUSE Leap Micro 5.5 vim 9.1.0836-150500.20.15.1 SUSE-SU-2024:4330-1
ReleasePackageFixed inAdvisory
Alpine v3.24 vim 9.1.0678-r0 —
Alpine v3.23 vim 9.1.0678-r0 —
Alpine v3.22 vim 9.1.0678-r0 —
Alpine v3.21 vim 9.1.0678-r0 —
Alpine v3.20 vim 9.1.0678-r0 —

Amazon Linux

ReleasePackageFixed inAdvisory
Amazon Linux 2023 xxd +6 2:9.1.785-1.amzn2023.0.1 ALAS2023-2024-761

Azure Linux

ReleasePackageFixed inAdvisory
Azure Linux 3 vim 9.0.2190-5 —
Azure Linux 2 (CBL-Mariner) vim 9.0.2121-3 —

Wolfi

ReleasePackageFixed inAdvisory
Wolfi rolling vim 9.1.0686-r0 —

Advisories 6

References