Cloudanix VulnDB

CVE-2023-4781

High · 7.8

CVSS

7.8

EPSS

0.6%

Published

Sep 5, 2023

CISA due date

—

Cloudanix analysis

Monitor only SSVC: Track

A problem in the Vim text editor could let someone take over a computer if a user opens a specially made file.

Exploit Available
Exploitation
Requires User Interaction
Attacker needs
User Interaction
Complexity
Low
Impact
Full Compromise
Component
Application
Class
Buffer Overflow
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

Heap-based buffer overflow in Vim that can lead to arbitrary code execution when processing specially crafted input.

Why it matters to the business

Attackers could gain control of systems where developers or administrators use Vim, potentially leading to further compromise of development environments or servers; low urgency given stable low exploit probability and absence from known exploited lists.

How an attack unfolds

An attacker prepares a malicious file designed to overflow a heap buffer in Vim; the victim opens the file with a vulnerable version, triggering the overflow and allowing code execution, with public exploits available to facilitate the attack.

How to fix it

Upgrade Vim to a version containing commit f6d28fe2c95c678cc3202cc5dc825a3fcc709e93 or later; rebuild from source or use updated packages from distribution repositories.

How to confirm the fix worked

Verify the installed Vim version is at least the fixed commit level; attempt to reproduce the overflow with known test cases or check source history for the applied patch.

Typical attack path

  1. Create or obtain a file that triggers the heap overflow in Vim
  2. Deliver the file to the target user via email, download, or shared storage
  3. Convince the user to open the file using Vim (user interaction required)
  4. Exploit the overflow to execute arbitrary code on the system

How to detect it

Review system logs for Vim crashes or unexpected process behavior when editing files; examine command history and file access logs around Vim usage for suspicious inputs.

What your security team should do

  • Update all Vim installations to the fixed commit immediately
  • Scan development and server environments for outdated Vim binaries
  • Educate users on risks of opening untrusted files with Vim
  • Monitor public exploit repositories for new proof-of-concept code

The record

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

Affected packages

Ecosystem Package Introduced Fixed
Alpine:v3.18 vim 0 9.0.2073-r0
Alpine:v3.19 vim 0 9.0.1888-r0
Alpine:v3.20 vim 0 9.0.1888-r0
Alpine:v3.21 vim 0 9.0.1888-r0
Alpine:v3.22 vim 0 9.0.1888-r0
Debian:10 vim 0 2:8.1.0875-5+deb10u6
Debian:11 vim 0 No fix
Debian:11 vim 0 2:8.2.2434-3+deb11u2
Debian:12 vim 0 No fix
Debian:13 vim 0 2:9.0.1894-1
Debian:14 vim 0 2:9.0.1894-1
SUSE:Enterprise Storage 7.1 vim 0 9.0.1894-150000.5.54.1
SUSE:Linux Enterprise High Performance Computing 15 SP1-LTSS vim 0 9.0.1894-150000.5.54.1
SUSE:Linux Enterprise High Performance Computing 15 SP2-LTSS vim 0 9.0.1894-150000.5.54.1
SUSE:Linux Enterprise High Performance Computing 15 SP3-ESPOS vim 0 9.0.1894-150000.5.54.1
SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSS vim 0 9.0.1894-150000.5.54.1
SUSE:Linux Enterprise Micro 5.1 vim 0 9.0.1894-150000.5.54.1
SUSE:Linux Enterprise Micro 5.2 vim 0 9.0.1894-150000.5.54.1
SUSE:Linux Enterprise Micro 5.3 vim 0 9.0.1894-150000.5.54.1
SUSE:Linux Enterprise Micro 5.4 vim 0 9.0.1894-150000.5.54.1
SUSE:Linux Enterprise Micro 5.5 vim 0 9.0.2103-150500.20.6.1
SUSE:Linux Enterprise Module for Basesystem 15 SP4 vim 0 9.0.1894-150000.5.54.1
SUSE:Linux Enterprise Module for Basesystem 15 SP5 vim 0 9.0.2103-150500.20.6.1
SUSE:Linux Enterprise Module for Desktop Applications 15 SP4 vim 0 9.0.1894-150000.5.54.1
SUSE:Linux Enterprise Module for Desktop Applications 15 SP5 vim 0 9.0.2103-150500.20.6.1
SUSE:Linux Enterprise Server 12 SP5 vim 0 9.0.1894-17.23.2
SUSE:Linux Enterprise Server 15 SP1-LTSS vim 0 9.0.1894-150000.5.54.1
SUSE:Linux Enterprise Server 15 SP2-LTSS vim 0 9.0.1894-150000.5.54.1
SUSE:Linux Enterprise Server 15 SP3-LTSS vim 0 9.0.1894-150000.5.54.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP5 vim 0 9.0.1894-17.23.2
SUSE:Linux Enterprise Server for SAP Applications 15 SP1 vim 0 9.0.1894-150000.5.54.1
SUSE:Linux Enterprise Server for SAP Applications 15 SP2 vim 0 9.0.1894-150000.5.54.1
SUSE:Linux Enterprise Server for SAP Applications 15 SP3 vim 0 9.0.1894-150000.5.54.1
SUSE:Manager Proxy 4.2 vim 0 9.0.1894-150000.5.54.1
SUSE:Manager Server 4.2 vim 0 9.0.1894-150000.5.54.1
Ubuntu:20.04:LTS vim 0 2:8.1.2269-1ubuntu5.20
Ubuntu:22.04:LTS vim 0 2:8.2.3995-1ubuntu2.13
Ubuntu:23.10 vim 0 2:9.0.1672-1ubuntu2.1
Ubuntu:Pro:14.04:LTS vim 0 2:7.4.052-1ubuntu3.1+esm14
Ubuntu:Pro:16.04:LTS vim 0 2:7.4.1689-3ubuntu1.5+esm20
Ubuntu:Pro:18.04:LTS vim 0 2:8.0.1453-1ubuntu1.13+esm6
openSUSE:Leap 15.4 vim 0 9.0.1894-150000.5.54.1
openSUSE:Leap 15.5 vim 0 9.0.2103-150500.20.6.1

Related vulnerabilities