Editor crash via zero-width window scrolling
Published Mar 1, 2023 · Updated Mar 7, 2025
Divide by zero in Vim before 9.0.1367 allows local users to crash the editor by triggering scrolling in a zero-width window. In scrolldown() in src/move.c, width2 can be zero but is used as the divisor for row adjustment and as the modulus for column adjustment. Exploitation requires user interaction that creates the zero-width window and invokes smooth scrolling; the bounded consequence is termination of the Vim process.
Summary
What happened
Divide by zero in Vim before 9.0.1367 allows local users to crash the editor by triggering scrolling in a zero-width window. In scrolldown() in src/move.c, width2 can be zero but is used as the divisor for row adjustment and as the modulus for column adjustment. Exploitation requires user interaction that creates the zero-width window and invokes smooth scrolling; the bounded consequence is termination of the Vim process.
The record
- CVE
- CVE-2023-1127
- Published
- Mar 1, 2023
- Updated
- Mar 7, 2025
- Vendor
- Vim
- Product
- Vim
- Classifications
- CWE-369, T1204.002
- Attack vector
- local
- Privileges
- unauthenticated
Timeline
How it unfolded
- Mar 1, 2023CVE publishedPublication date reported by the CVE source.
- Mar 7, 2025Record 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.1367
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
- huntr proof of concept for zero-width window crashproof of concept · unverified
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