Editor crash via argumentless script unlet
Published Aug 15, 2022 · Updated Aug 3, 2024
Out-of-bounds read in Vim before 9.0.0212 allows context-dependent attackers to crash the editor via an argumentless :unlet in a Vim9 script. The check_vim9_unlet function reads name[1] when name points to the line-ending NUL because it does not first reject an empty argument. A user must cause Vim to compile the crafted Vim9 script; the upstream patch demonstrates an invalid read, while Debian classifies the result as a CLI crash with no security impact.
Summary
What happened
Out-of-bounds read in Vim before 9.0.0212 allows context-dependent attackers to crash the editor via an argumentless :unlet in a Vim9 script. The check_vim9_unlet function reads name[1] when name points to the line-ending NUL because it does not first reject an empty argument. A user must cause Vim to compile the crafted Vim9 script; the upstream patch demonstrates an invalid read, while Debian classifies the result as a CLI crash with no security impact.
The record
- CVE
- CVE-2022-2816
- Published
- Aug 15, 2022
- Updated
- Aug 3, 2024
- Vendor
- Vim
- Product
- Vim
- Classifications
- CWE-125, T1204.002
- Attack vector
- local
- Privileges
- unauthenticated
Timeline
How it unfolded
- Aug 15, 2022CVE publishedPublication date reported by the CVE source.
- Aug 3, 2024Record updatedLatest update available in the CVE record.
Exploitability
Present is not the same as exploitable
Compare your product and version with the public record. A matching version still requires validation against your environment.
Is a vulnerable build present?
Compare these published version ranges with your installed build and any vendor patches.
- Affected versionversion=unspecified <9.0.0212
What conditions does exploitation require?
What is affected?
Attacks
What attackers are doing with it
Daily unique IPs observed by Shadowserver honeypots for known exploited vulnerabilities (KEVs). Missing observations do not establish an absence of attacks.
Public exploit references
- Upstream argumentless :unlet regression triggerproof of concept · demonstrated
Labels summarize the accepted research assessment. They do not indicate a test against your environment.
Technologies
Your stack
See the directory against your own environment.
Your stack
Check the software in your environment
Book a demo to see how Hinoki identifies affected software and validates exploitability in your environment.
Book a demo