CVE-2023-48236
Low · 2.8CVSS
2.8
EPSS
0.7%
Published
Nov 16, 2023
CISA due date
—
Cloudanix analysis
A popular command-line text editor can crash or behave incorrectly when a user checks spelling suggestions with an unusually large number, but the problem is minor and requires deliberate action.
- Exploitation
- Requires User Interaction
- Attacker needs
- User Interaction
- Complexity
- Moderate
- Impact
- Data Tampering
- Component
- Application
- Class
- Memory Corruption
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
An integer overflow occurs when the z= spell suggestion command processes a count value exceeding MAX_INT, which can corrupt memory structures.
Why it matters to the business
Organizations face a low risk of editor crashes or minor data integrity issues during routine spell-checking tasks that require user interaction, with negligible operational disruption.
How an attack unfolds
An attacker prepares input containing an excessively large count and persuades a local user to invoke the z= command, triggering the overflow during spell suggestion processing.
How to fix it
Upgrade all Vim installations to version 9.0.2111 or later (commit 73b2d3790cad5694fc0ed0db2926e4220c48d968). No workarounds exist.
How to confirm the fix worked
Confirm the installed Vim version is 9.0.2111 or newer, then test the z= command with values larger than MAX_INT to verify absence of overflow or crash.
Typical attack path
- Prepare a file or buffer containing a specially chosen large count value
- User opens the file in Vim and executes the z= command
- The command handler performs arithmetic that overflows MAX_INT
- Memory corruption occurs, potentially leading to a crash or limited integrity impact
How to detect it
Search application and system logs for segmentation faults or abrupt Vim terminations that coincide with spell-checking activity.
What your security team should do
- Prioritize upgrade of Vim to the fixed release across all systems
- Include Vim in routine patch management cycles
- Review any internal processes that invoke Vim non-interactively for exposure
The record
Vim is an open source command line text editor. When using the z= command, the user may overflow the count with values larger than MAX_INT. Impact is low, user interaction is required and a crash may not even happen in all situations. This vulnerability has been addressed in commit `73b2d379` which has been included in release version 9.0.2111. Users are advised to upgrade. There are no known workarounds for this vulnerability.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Debian:11 | vim | 0 | No fix |
| Debian:12 | vim | 0 | No fix |
| Debian:13 | vim | 0 | 2:9.0.2116-1 |
| Mageia:9 | vim | 0 | 9.0.2130-2.mga9 |
| SUSE:Enterprise Storage 7.1 | vim | 0 | 9.1.0111-150000.5.60.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP2-LTSS | vim | 0 | 9.1.0111-150000.5.60.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSS | vim | 0 | 9.1.0111-150000.5.60.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS | vim | 0 | 9.1.0111-150000.5.60.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP4-LTSS | vim | 0 | 9.1.0111-150000.5.60.1 |
| SUSE:Linux Enterprise Micro 5.1 | vim | 0 | 9.1.0111-150000.5.60.1 |
| SUSE:Linux Enterprise Micro 5.2 | vim | 0 | 9.1.0111-150000.5.60.1 |
| SUSE:Linux Enterprise Micro 5.3 | vim | 0 | 9.1.0111-150000.5.60.1 |
| SUSE:Linux Enterprise Micro 5.4 | vim | 0 | 9.1.0111-150000.5.60.1 |
| SUSE:Linux Enterprise Micro 5.5 | vim | 0 | 9.1.0111-150500.20.9.1 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP5 | vim | 0 | 9.1.0111-150500.20.9.1 |
| SUSE:Linux Enterprise Module for Desktop Applications 15 SP5 | vim | 0 | 9.1.0111-150500.20.9.1 |
| SUSE:Linux Enterprise Server 12 SP5 | vim | 0 | 9.1.0111-17.29.1 |
| SUSE:Linux Enterprise Server 15 SP2-LTSS | vim | 0 | 9.1.0111-150000.5.60.1 |
| SUSE:Linux Enterprise Server 15 SP3-LTSS | vim | 0 | 9.1.0111-150000.5.60.1 |
| SUSE:Linux Enterprise Server 15 SP4-LTSS | vim | 0 | 9.1.0111-150000.5.60.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP5 | vim | 0 | 9.1.0111-17.29.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP2 | vim | 0 | 9.1.0111-150000.5.60.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP3 | vim | 0 | 9.1.0111-150000.5.60.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP4 | vim | 0 | 9.1.0111-150000.5.60.1 |
| SUSE:Manager Proxy 4.3 | vim | 0 | 9.1.0111-150000.5.60.1 |
| SUSE:Manager Server 4.3 | vim | 0 | 9.1.0111-150000.5.60.1 |
| Ubuntu:20.04:LTS | vim | 0 | 2:8.1.2269-1ubuntu5.21 |
| Ubuntu:22.04:LTS | vim | 0 | 2:8.2.3995-1ubuntu2.15 |
| Ubuntu:23.10 | vim | 0 | 2:9.0.1672-1ubuntu2.2 |
| Ubuntu:Pro:14.04:LTS | vim | 0 | 2:7.4.052-1ubuntu3.1+esm15 |
| Ubuntu:Pro:16.04:LTS | vim | 0 | 2:7.4.1689-3ubuntu1.5+esm22 |
| Ubuntu:Pro:18.04:LTS | vim | 0 | 2:8.0.1453-1ubuntu1.13+esm7 |
| openSUSE:Leap 15.5 | vim | 0 | 9.1.0111-150500.20.9.1 |
| openSUSE:Leap Micro 5.3 | vim | 0 | 9.1.0111-150000.5.60.1 |
| openSUSE:Leap Micro 5.4 | vim | 0 | 9.1.0111-150000.5.60.1 |
Related vulnerabilities
- CVE-2025-29768 Vim, a text editor, is vulnerable to potential data loss with zip.vim and special crafted… Also affects vim
- CVE-2025-27423 Vim is an open source, command line text editor. Also affects vim
- CVE-2025-24014 Vim is an open source, command line text editor. Also affects vim
- CVE-2025-22134 When switching to other buffers using the :all command and visual mode still being… Also affects vim
- CVE-2024-47814 Vim is an open source, command line text editor. Also affects vim
- CVE-2024-43802 Vim is an improved version of the unix vi text editor. Also affects vim
- CVE-2024-43374 The UNIX editor Vim prior to version 9.1.0678 has a use-after-free error in argument list… Also affects vim
- CVE-2024-22667 Vim before 9.0.2142 has a stack-based buffer overflow because did_set_langmap in map.c… Also affects vim