CVE-2026-53432: Integer Overflow DoS in fzf FuzzyMatchV2 Function
fzf, a popular command-line fuzzy finder tool, contains an integer overflow vulnerability in its FuzzyMatchV2 matching function. When processing extremely large input—around 2.2 million bytes—combined with a moderately long search pattern of 999 bytes, an arithmetic operation overflows and causes the application to crash immediately. This is a denial-of-service issue: attackers cannot steal data or gain unauthorized access, but they can reliably crash any system running vulnerable fzf versions. The vulnerability affects deployments where fzf processes untrusted or user-supplied input at scale.
Source data · NVD / CISA · public domain
- CVSS
- 3.1 · 7.5 HIGH · CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
- Weaknesses (CWE)
- CWE-190
- Affected products
- 1 configuration(s)
- Published / Modified
- 2026-06-30 / 2026-07-02
NVD description (verbatim)
fzf is vulnerable to Integer Overflow leading to crash in FuzzyMatchV2 function. When input line length is approximately 2,200,000 bytes and pattern length is 999 bytes, the product overflows. The Go runtime detects the invalid slice bounds and terminates the process immediately with a non-recoverable panic. This issue was fixed in version 0.73.1.
3 reference(s) · View on NVD →
SEC.co analysis · AI-assisted, reviewed against source
Technical summary
CVE-2026-53432 is an integer overflow vulnerability in the FuzzyMatchV2 function of junegunn fzf. The vulnerability occurs when the product of the input line length (~2,200,000 bytes) and pattern length (999 bytes) exceeds the maximum value representable in the signed integer type used for internal slice bounds calculations. The Go runtime's bounds checking detects the invalid allocation and immediately panics, terminating the process with a non-recoverable error. This is a classic case of CWE-190 (Integer Overflow or Wraparound) that bypasses normal control flow and results in a guaranteed crash under specific input conditions. The vulnerability was patched in version 0.73.1.
Business impact
While not a data breach or privilege-escalation risk, this denial-of-service vulnerability can disrupt workflows that depend on fzf for interactive command-line usage or scripting automation. If fzf is integrated into CI/CD pipelines, shell initialization scripts, or automated data processing tools, a malicious or malformed input could halt operations unexpectedly. Organizations relying on fzf for shell integration, file searching in large codebases, or batch filtering operations may experience service interruption. The impact is localized to availability but can cascade if fzf failure triggers downstream failures in dependent processes.
Affected systems
The vulnerability affects all versions of junegunn fzf prior to 0.73.1. Any deployment or user environment running an earlier version is vulnerable if fzf is exposed to sufficiently large input. This includes: users with interactive shell bindings, CI/CD pipelines leveraging fzf for file selection or filtering, integrated development environments and editors with fzf plugins, and automated scripts that pipe large datasets through fzf. The vulnerability is most likely to surface in environments processing large text files, log aggregation systems, or data pipelines where fzf is used for filtering.
Exploitability
Exploitation requires only the ability to provide input to fzf that meets the overflow condition: a line of approximately 2.2 million bytes and a pattern of 999 bytes. No special privileges, authentication, or user interaction is necessary if fzf is exposed to network input or untrusted data sources. The exploit is straightforward to trigger once the specific input dimensions are known, making it trivial to weaponize in any context where an attacker can control fzf's input. However, real-world exploitability is limited by the requirement for extremely large input—most interactive use cases and typical file sizes do not approach 2.2 million bytes per line, so exploitation is practical only in specific batch-processing or pipeline scenarios.
Remediation
Update junegunn fzf to version 0.73.1 or later. This patched version corrects the integer overflow in the FuzzyMatchV2 function and eliminates the crash condition. Users should verify their current fzf version using `fzf --version` and upgrade via their package manager, direct download, or build from source if necessary. After updating, test in non-production environments to confirm no regressions in existing workflows.
Patch guidance
Upgrade to fzf 0.73.1 or any subsequent release. Verify the installed version with `fzf --version` before and after patching. Most users will receive updates through their OS package manager (apt, brew, pacman, etc.) or through the official GitHub releases. If you maintain a custom fzf deployment or build from source, pull the latest stable tag and rebuild. No configuration changes or environment adjustments are required post-patch; the fix is transparent to end users.
Detection guidance
Monitor system logs for unexpected fzf process crashes or panics, particularly in CI/CD or automated workflow logs. Look for panic messages referencing integer bounds or slice allocation errors from fzf. If fzf is used in containerized or ephemeral environments, check exit codes—a non-zero exit after fzf invocation may indicate an overflow crash. In production pipelines, implement alerting on fzf command failure and investigate root cause. Assess your fzf usage patterns: if you process files or inputs consistently over 100 MB per line or aggregate large datasets through fzf, you are at higher risk and should prioritize patching.
Why prioritize this
Although this is a denial-of-service vulnerability with a CVSS 7.5 (HIGH) score and no data confidentiality or integrity impact, it merits prompt attention in environments where fzf is mission-critical to operations. The vulnerability is trivially exploitable once triggered, and any crash in an automated workflow can cascade. Organizations using fzf in CI/CD, shell initialization, or batch data processing should patch within their standard update cycle. For casual interactive users, the risk is lower but not negligible if fzf handles untrusted input. The lack of KEV status and low real-world exploit complexity (given the specific input requirement) suggests this is not currently exploited in the wild on a large scale, but proactive patching prevents opportunistic abuse.
Risk score, explained
The CVSS 3.1 score of 7.5 (HIGH) reflects a vulnerability with high availability impact (A:H), no authentication required (PR:N), network accessibility (AV:N), low attack complexity (AC:L), and no impact to confidentiality or integrity (C:N, I:N). The score appropriately penalizes the denial-of-service nature and ease of triggering over the network if fzf is exposed. The score does not account for the low real-world prevalence of the specific input conditions or the fact that typical fzf deployments do not process files of the required size, which would lower practical risk in most organizations.
Frequently asked questions
Can this vulnerability be exploited over the network?
Yes. If fzf receives input over a network interface—through a web service, API, or piped data stream—an attacker can craft input matching the overflow conditions (very large line, specific pattern length) to crash the service. However, if fzf is used only for local interactive command-line work, network exposure is zero.
Do I need to update fzf immediately?
Update within your standard patch cycle, prioritizing if fzf is in production automation or CI/CD pipelines. If you use fzf only interactively for shell navigation or file search on typical-sized files (under 100 MB per line), risk is lower but patching is still recommended. Verify you are on version 0.73.1 or later.
Will updating fzf break my shell configuration or scripts?
No. The patch is a bug fix that corrects the overflow condition. Your shell bindings, keybindings, and scripts will continue to work as before. Test in a non-production environment first to confirm, but breaking changes are not expected.
How do I check my current fzf version?
Run `fzf --version` in your terminal. If the output shows a version number lower than 0.73.1, you should upgrade. Check your package manager or GitHub releases for the latest stable version.
This analysis is based on published information available as of the modification date and vendor advisories. CVSS scores and KEV status are provided by official sources and reflect a point-in-time assessment. Organizations should validate affected versions and patch applicability against their specific deployments. This intelligence is for informational purposes and does not constitute professional security advice. Consult your security team or a qualified consultant for guidance specific to your environment. SEC.co makes no warranty regarding the completeness or accuracy of this information. Source: NVD (public-domain), retrieved 2026-08-09. Analysis generated by SEC.co (claude-haiku-4-5).
Related vulnerabilities
- CVE-2023-29146HIGHInteger Overflow in Malwarebytes EDR 1.0.11 Linux Hash Functions
- CVE-2025-14098HIGHAvira Antivirus Engine Heap Buffer Overflow—Patch Guidance
- CVE-2025-66280HIGHQNAP Integer Overflow Vulnerability: Patch & Risk Assessment
- CVE-2026-0095HIGHAndroid Bluetooth Integer Overflow Privilege Escalation
- CVE-2026-0131HIGHAndroid RTP Integer Overflow Privilege Escalation Vulnerability
- CVE-2026-0148HIGHAndroid RTP Video Decoder Integer Overflow Remote Code Execution
- CVE-2026-0150HIGHAndroid EdgeTPU Firmware Privilege Escalation Vulnerability
- CVE-2026-0151HIGHAndroid Graphics Integer Overflow RCE Vulnerability