Skip to main content

Vim CVE-2026-73074

| EUVDEUVD-2026-56229 HIGH
Integer Overflow or Wraparound (CWE-190)
2026-08-11 GitHub_M
7.1
CVSS 4.0 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Recon
    Craft malicious file or Vimscript
  2. Delivery
    Deliver to target user via email or download
  3. Exploit
    User opens file in Vim
  4. Install
    prop_add() called 65,536+ times on single line
  5. C2
    uint16_t counter wraps to zero
  6. Execute
    Heap allocation sized for zero records overwritten
  7. Impact
    Heap corruption yields code execution or data leak

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Integer overflow checks
MITRE ATT&CK

1 technique across 1 tactic: Execution

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires a local user to open a malicious file or execute a malicious Vim script that calls prop_add() more than 65,535 times on a single line - a condition only reachable through Vim's text-properties API (prop_add() / FEAT_PROP_POPUP). The CVSS 4.0 vector UI:A confirms active user interaction is required: the victim must open the crafted file or source the script. Attack complexity is rated AC:H, reflecting that triggering the counter wrap requires constructing a scenario with precisely more than 0xffff prop_add calls, which is non-trivial in typical document content but straightforward in a malicious Vimscript. Exploitation is NOT possible without user interaction with a crafted artifact. The flaw does not affect Vim builds compiled without FEAT_PROP_POPUP, though most modern distribution packages include this feature.

Impact

The CVSS 4.0 vector (AV:L/AC:H/PR:N/UI:A) correctly characterises this as a local, user-interaction-dependent flaw with high attack complexity, limiting opportunistic mass exploitation; the high C/I/A impact reflects that successful heap corruption in an editor process can yield code execution or information disclosure. EPSS data was not provided, but given the local vector, high complexity, and requirement to open a specially crafted file, real-world exploitation probability is likely low-to-moderate even for targeted attacks. There is no CISA KEV entry and no independent POC beyond the upstream regression test included in the fix commit. The absence of a KEV listing and the AC:H rating together suggest this is not currently being exploited at scale - a small or mid-sized IT team should patch on a normal vulnerability-management cycle rather than treating it as an emergency. The tags list 'Information Disclosure' alongside 'Integer Overflow', which is consistent with heap-content leakage being one possible exploitation outcome prior to full memory corruption.

Exploit ScenarioDerived

An attacker crafts a file or Vim script that, when opened, triggers a loop adding more than 65,535 text properties to a single line via prop_add(). On the 65,536th call, the uint16_t counter wraps to zero, and Vim allocates a zero-sized heap block while copying the existing property array into it, corrupting the heap. Depending on allocator behaviour and surrounding heap layout, this can lead to information disclosure of heap contents or arbitrary code execution within the Vim process under the privileges of the opening user.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.1% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Aug 11, 2026

Integer overflow in Vim's text-property subsystem (prior to 9.2.0841) allows a crafted file to wrap a uint16_t line-property counter from 0xffff to zero, causing prop_add_one() in src/textprop.c to copy existing text-property records into a heap allocation sized for zero entries. The resulting heap corruption can yield high-impact confidentiality, integrity, and availability consequences on the local user's process. No public exploit or CISA KEV listing exists at time of analysis, but the CVSS 4.0 score of 7.1 (AV:L/AC:H) reflects meaningful risk for users who open untrusted files in Vim.

RemediationAI

Upgrade Vim to version 9.2.0841 or later; this is the vendor-confirmed fix released via commit a9336b476fd1a182e3f79b5f83c0ffb04f8a922b (https://github.com/vim/vim/commit/a9336b476fd1a182e3f79b5f83c0ffb04f8a922b) and documented in the GitHub Security Advisory GHSA-hm4g-pjfx-m27j. Distribution maintainers should backport the bounds-check addition to src/textprop.c if they do not ship upstream Vim directly. As a compensating control where patching is delayed, restrict use of Vim's text-properties feature by avoiding scripts or plugins that call prop_add() on untrusted input; note this control is difficult to enforce globally and does not address the underlying defect. Opening untrusted files in a restricted sandbox (e.g., via firejail or a container) reduces blast radius but does not eliminate the vulnerability.

Affected VersionsENISA

vim < 9.2.0841

Affected Packages

euvd vim fix: 9.2.0841

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Vim's text-properties feature (FEAT_PROP_POPUP) tracks per-line property metadata via a uint16_t counter (proplen) stored in heap-allocated records. The function prop_add_one() in src/textprop.c reads the current property count with get_text_props() and uses it to size a new heap allocation. Because proplen is a 16-bit unsigned integer, adding the 65,536th property (0x10000) wraps it silently to zero. The allocation is then sized for zero records while existing records are copied into it, producing a classic heap buffer overflow rooted in CWE-190 (Integer Overflow or Wraparound). The fix in commit a9336b4 adds a bounds check - rejecting any prop_add call when proplen already equals 0xffff - and introduces error E1580. Affected scope is all Vim builds with FEAT_PROP_POPUP compiled in, identified by CPE cpe:2.3:a:vim:vim:*:*:*:*:*:*:*:*.

Know when Vim gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (GitHub_M) PRIMARY 7.1 HIGH
CVSS:4.0/AV:L/AC:H/AT:N/PR:N/UI:A/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
vuln.today AI 7.0 HIGH

Local vector and high complexity reflect needing a crafted file; UI:R because user must open it; no privileges required to open a file; unchanged scope since impact stays within the Vim process.

3.1 AV:L/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H
4.0 AV:L/AC:H/AT:N/PR:N/UI:A/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
SUSE 7.8 HIGH
AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
Red Hat 5.5 MEDIUM

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Local
Attack Complexity
High
Attack Requirements
None
Privileges Required
None
User Interaction
Active
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
High
Vulnerable system: Availability
High
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

2
Patch available
Aug 11, 2026 - 17:02 EUVD
CVE Published
Aug 11, 2026 - 15:35 cve.org
HIGH 7.1

DescriptionCVE.org

Vim is an open source, command line text editor. Prior to 9.2.0841, prop_add_one() in src/textprop.c uses the proplen value from get_text_props() to increment a uint16_t property count beyond 0xffff, wrapping the count to zero and copying existing text-property records into a heap allocation sized for none of them. This issue is fixed in version 9.2.0841.

Executive ViewAI

Why It Matters

Vim's text-property subsystem contains a heap corruption vulnerability (CVE-2026-73074) affecting users who open untrusted files, potentially allowing local process compromise and unauthorized access to sensitive data or system files. Organizations with security analysts, developers, or researchers using Vim face data exposure and integrity risks when handling third-party documents or log files. This vulnerability requires user interaction to trigger but poses material risk to workflows involving untrusted content analysis.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations include: (1) Restrict Vim file access to trusted, verified sources; (2) Provide and mandate use of alternative editors for untrusted content; (3) Implement file quarantine and manual review procedures for suspicious or third-party documents before opening in any editor; (4) Deploy Vim within sandboxed or containerized environments for high-risk workflows; (5) Conduct user training on risks of opening untrusted files in text editors.

Threat Intelligence Overview

EPSS Score
0.1%
Top 99% exploitable
Prevalence
High
default editor on Linux/Unix, widely installed across developer and server environments
Data Quality
8 sources
Confidence: High

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.1%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
None
System Exposure· derived
Small
Automatable
No
Human Impact
High
Technical Impact
Total

Priority Score

36
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +36
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Integer overflow occurs when an arithmetic operation produces a result that exceeds the maximum value a given integer type can store.

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

More in Vim

View all
CVE-2022-3520 CRITICAL POC
9.8 Dec 02

Heap-based Buffer Overflow in GitHub repository vim/vim prior to 9.0.0765. Rated critical severity (CVSS 9.8), this vuln

CVE-2022-0729 HIGH POC
8.8 Feb 23

Use of Out-of-range Pointer Offset in GitHub repository vim/vim prior to 8.2.4440. Rated high severity (CVSS 8.8), this

CVE-2026-34714 HIGH POC
8.6 Mar 30

Code execution vulnerability in Vim before 9.2.0272 allows attackers to gain immediate arbitrary command execution upon

CVE-2019-12735 HIGH POC
8.6 Jun 05

getchar.c in Vim before 8.1.1365 and Neovim before 0.3.6 allows remote attackers to execute arbitrary OS commands via th

CVE-2021-3968 HIGH POC
8.0 Nov 19

vim is vulnerable to Heap-based Buffer Overflow. Rated high severity (CVSS 8.0), this vulnerability is remotely exploita

CVE-2022-1616 HIGH POC
7.8 May 07

Use after free in append_command in GitHub repository vim/vim prior to 8.2.4895. Rated high severity (CVSS 7.8), this vu

CVE-2022-1619 HIGH POC
7.8 May 08

Heap-based Buffer Overflow in function cmdline_erase_chars in GitHub repository vim/vim prior to 8.2.4899. Rated high se

CVE-2021-4136 HIGH POC
7.8 Dec 19

vim is vulnerable to Heap-based Buffer Overflow. Rated high severity (CVSS 7.8), this vulnerability is no authentication

CVE-2021-3973 HIGH POC
7.8 Nov 19

vim is vulnerable to Heap-based Buffer Overflow. Rated high severity (CVSS 7.8), this vulnerability is no authentication

CVE-2021-3927 HIGH POC
7.8 Nov 05

vim is vulnerable to Heap-based Buffer Overflow. Rated high severity (CVSS 7.8), this vulnerability is no authentication

CVE-2022-2125 HIGH POC
7.8 Jun 19

Heap-based Buffer Overflow in GitHub repository vim/vim prior to 8.2. Rated high severity (CVSS 7.8), this vulnerability

CVE-2022-2126 HIGH POC
7.8 Jun 19

Out-of-bounds Read in GitHub repository vim/vim prior to 8.2. Rated high severity (CVSS 7.8), this vulnerability is no a

Vendor StatusVendor

SUSE

Severity: Important
Product Status
SLES15-SP5-CHOST-BYOS-SAP-CCloud Affected
SLES15-SP6-CHOST-BYOS Affected
SLES15-SP6-CHOST-BYOS-Aliyun Affected
SLES15-SP6-CHOST-BYOS-Azure Affected
SLES15-SP6-CHOST-BYOS-EC2 Affected

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy