Cloudanix VulnDB

CVE-2023-2610

High · 7.8

CVSS

7.8

EPSS

0.5%

Published

May 9, 2023

CISA due date

—

Cloudanix analysis

Monitor only SSVC: Track

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

Exploit Available
Exploitation
Requires User Interaction
Attacker needs
User Interaction
Complexity
Low
Impact
Data Tampering
Component
Application
Class
Memory Corruption
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

Integer overflow or wraparound in Vim's input processing leads to memory corruption, enabling potential arbitrary code execution on the local system.

Why it matters to the business

Development teams and organizations using Vim for code editing face elevated risk of workstation compromise, which can result in unauthorized access to source code, intellectual property theft, or deployment of persistent malware across engineering environments.

How an attack unfolds

An attacker crafts a specially formatted file that triggers the integer wraparound during Vim's parsing routines. When a user opens the file in an affected version, the overflow corrupts memory structures, allowing the attacker to hijack control flow and execute arbitrary code without requiring elevated privileges beyond normal file access.

How to fix it

Upgrade all Vim installations to a version containing commit ab9a2d884b3a4abe319606ea95a5a6d6b01cd73a (equivalent to 9.0.1532 or newer). Rebuild from source or obtain updated packages from distribution maintainers if binary releases lag.

How to confirm the fix worked

Confirm Vim reports version 9.0.1532 or later via 'vim --version'; attempt to open known trigger files in a test environment and verify absence of crashes or unexpected behavior; review build logs for the referenced commit hash.

Typical attack path

  1. Create malicious file exploiting integer overflow in Vim parsing
  2. Deliver file to victim via email, web download, or shared repository
  3. Victim opens file using vulnerable Vim instance
  4. Integer wraparound causes memory corruption
  5. Attacker payload executes arbitrary code on the system

How to detect it

Review system and application logs for Vim segmentation faults or abnormal memory usage when processing files; correlate with file access timestamps on developer machines; inspect for unexpected child processes spawned from Vim.

What your security team should do

  • Prioritize immediate upgrade of Vim across all developer workstations and CI systems
  • Restrict execution of untrusted files in Vim until patches are applied
  • Enable application whitelisting or sandboxing for text editors handling external content
  • Monitor vulnerability disclosure feeds for Vim-related updates given high exploit maturity

The record

Integer Overflow or Wraparound in GitHub repository vim/vim prior to 9.0.1532.

Affected packages

Ecosystem Package Introduced Fixed
Debian:10 vim 0 2:8.1.0875-5+deb10u5
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.1658-1
SUSE:Enterprise Storage 7 vim 0 9.0.1572-150000.5.46.1
SUSE:Enterprise Storage 7.1 vim 0 9.0.1572-150000.5.46.1
SUSE:Linux Enterprise High Performance Computing 15 SP1-LTSS vim 0 9.0.1572-150000.5.46.1
SUSE:Linux Enterprise High Performance Computing 15 SP2-LTSS vim 0 9.0.1572-150000.5.46.1
SUSE:Linux Enterprise High Performance Computing 15 SP3-ESPOS vim 0 9.0.1572-150000.5.46.1
SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSS vim 0 9.0.1572-150000.5.46.1
SUSE:Linux Enterprise Micro 5.1 vim 0 9.0.1572-150000.5.46.1
SUSE:Linux Enterprise Micro 5.2 vim 0 9.0.1572-150000.5.46.1
SUSE:Linux Enterprise Micro 5.3 vim 0 9.0.1572-150000.5.46.1
SUSE:Linux Enterprise Micro 5.4 vim 0 9.0.1572-150000.5.46.1
SUSE:Linux Enterprise Module for Basesystem 15 SP4 vim 0 9.0.1572-150000.5.46.1
SUSE:Linux Enterprise Module for Basesystem 15 SP5 vim 0 9.0.1632-150500.20.3.1
SUSE:Linux Enterprise Module for Desktop Applications 15 SP4 vim 0 9.0.1572-150000.5.46.1
SUSE:Linux Enterprise Module for Desktop Applications 15 SP5 vim 0 9.0.1632-150500.20.3.1
SUSE:Linux Enterprise Real Time 15 SP3 vim 0 9.0.1572-150000.5.46.1
SUSE:Linux Enterprise Server 12 SP2-BCL vim 0 9.0.1572-17.18.1
SUSE:Linux Enterprise Server 12 SP5 vim 0 9.0.1572-17.18.1
SUSE:Linux Enterprise Server 15 SP1-LTSS vim 0 9.0.1572-150000.5.46.1
SUSE:Linux Enterprise Server 15 SP2-LTSS vim 0 9.0.1572-150000.5.46.1
SUSE:Linux Enterprise Server 15 SP3-LTSS vim 0 9.0.1572-150000.5.46.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP5 vim 0 9.0.1572-17.18.1
SUSE:Linux Enterprise Server for SAP Applications 15 SP1 vim 0 9.0.1572-150000.5.46.1
SUSE:Linux Enterprise Server for SAP Applications 15 SP2 vim 0 9.0.1572-150000.5.46.1
SUSE:Linux Enterprise Server for SAP Applications 15 SP3 vim 0 9.0.1572-150000.5.46.1
SUSE:Manager Proxy 4.2 vim 0 9.0.1572-150000.5.46.1
SUSE:Manager Server 4.2 vim 0 9.0.1572-150000.5.46.1
Ubuntu:20.04:LTS vim 0 2:8.1.2269-1ubuntu5.15
Ubuntu:22.04:LTS vim 0 2:8.2.3995-1ubuntu2.8
Ubuntu:Pro:14.04:LTS vim 0 2:7.4.052-1ubuntu3.1+esm10
Ubuntu:Pro:16.04:LTS vim 0 2:7.4.1689-3ubuntu1.5+esm18
Ubuntu:Pro:18.04:LTS vim 0 2:8.0.1453-1ubuntu1.13+esm1
openSUSE:Leap 15.4 vim 0 9.0.1572-150000.5.46.1
openSUSE:Leap 15.5 vim 0 9.0.1632-150500.20.3.1
openSUSE:Leap Micro 5.3 vim 0 9.0.1572-150000.5.46.1
openSUSE:Leap Micro 5.4 vim 0 9.0.1572-150000.5.46.1

Related vulnerabilities