{"id":"CVE-2026-53433","kind":"vulnerability","aliases":["CVE-2026-53433","GHSA-mvmf-94v6-879g","GO-2026-6620"],"related":[],"title":"fzf vulnerable to denial of service through quadratic HTTP request-body accumulation in github.com/junegunn/fzf","description":"fzf is vulnerable to a Denial of Service (DoS) due to inefficient HTTP body processing in the --listen mode due to inefficient HTTP body processing using repeated string concatenation, resulting in quadratic time complexity (O(n²)). A crafted POST request with many small segments can trigger excessive CPU usage during request handling.This allows a single malicious request to monopolize the single‑threaded HTTP server, blocking all other clients and resulting in denial of service.\n\nThis issue was fixed in version 0.73.1.","summary":"fzf's --listen mode parses HTTP POST bodies by repeated string concatenation, which costs quadratic CPU time in the body size. A crafted POST made of many small segments makes one request consume excessive CPU and monopolize the single-threaded server.","severity":"high","cvss":7.5,"epss":0.00378,"exploited":false,"exploited_at":null,"products":[{"name":"github.com/junegunn/fzf","fixed":["0.73.1"],"affected":"< 0.73.1","ecosystem":"go"}],"ecosystems":["go"],"tags":["fzf","go","listen-mode","package"],"not_affected_if":["fzf 0.73.1 or later","no --listen flag"],"how_to_check":"Run `fzf --version` and check whether it is below 0.73.1.\nSearch scripts, shell config and FZF_DEFAULT_OPTS for `--listen`.\nIf --listen is not used, the server is not running.","fix":"Upgrade fzf to 0.73.1 or later.\nIf you cannot upgrade right away, stop running fzf with --listen.","status":"open","published_at":"2026-06-30T13:19:13+00:00","first_seen_at":"2026-10-23T19:13:08+00:00","triaged_at":"2026-10-23T21:45:44+00:00","updated_at":"2026-10-23T21:45:44+00:00","category":"package","confidence":0.7,"triage":{"at":"2026-10-23T21:45:44Z","model":"claude-haiku-5-5","output":{"fix":"Upgrade fzf to 0.73.1 or later.\nIf you cannot upgrade right away, stop running fzf with --listen.","reach":"network","impact":"medium","summary":"fzf's --listen mode parses HTTP POST bodies by repeated string concatenation, which costs quadratic CPU time in the body size. A crafted POST made of many small segments makes one request consume excessive CPU and monopolize the single-threaded server.","category":"package","who_cares":["fzf","go","listen-mode"],"confidence":0.7,"needs_auth":"no","worst_case":"Single request stalls the fzf listen server, blocking all other clients.","analyst_note":"","how_to_check":"Run `fzf --version` and check whether it is below 0.73.1.\nSearch scripts, shell config and FZF_DEFAULT_OPTS for `--listen`.\nIf --listen is not used, the server is not running.","needs_analyst":false,"not_affected_if":["no --listen flag","fzf 0.73.1 or later"],"user_interaction":"no","needs_special_setup":"yes","severity_if_unknown":"unknown"},"cost_usd":0.001034,"input_tokens":2995,"output_tokens":1469,"severity_before":"high"},"analyst_status":null,"analyst_note":null,"search":"'-2026':19A,27A,30A '-53433':20A,31A '-6620':28A '/junegunn/fzf':17A,34A '0.73.1':163C '879g':25A '94v6':24A 'accumul':13A 'allow':135C 'block':147C 'bodi':12A,48B,60B,96C,106C 'client':150C 'complex':116C 'concaten':52B,111C 'consum':73B 'cost':54B 'cpu':56B,75B,130C 'craft':63B,120C 'cve':18A,29A 'denial':4A,88C,154C 'dos':91C 'due':92C,102C 'excess':74B,129C 'fix':160C 'fzf':1A,35B,41B,83C 'ghsa':22A 'ghsa-mvmf-94v6-879g':21A 'github.com':16A,33A 'github.com/junegunn/fzf':15A,32A 'go':26A,36B 'handling.this':134C 'http':9A,46B,95C,105C,145C 'ineffici':94C,104C 'issu':158C 'listen':38B,43B,100C 'listen-mod':37B 'made':65B 'make':70B 'malici':138C 'mani':67B,124C 'mode':39B,44B,101C 'monopol':77B,141C 'mvmf':23A 'n':118C 'o':117C 'one':71B 'packag':40B 'pars':45B 'post':47B,64B,121C 'process':97C,107C 'quadrat':8A,55B,114C 'repeat':50B,109C 'request':11A,72B,122C,133C,139C 'request-bodi':10A 'result':112C,152C 'segment':69B,126C 'server':82B,146C 'servic':6A,90C,156C 'singl':80B,137C,143C 'single-thread':79B 'size':61B 'small':68B,125C 'string':51B,110C 'thread':81B,144C 'time':57B,115C 'trigger':128C 'usag':131C 'use':108C 'version':162C 'vulner':2A,85C","nicknames":[],"mitigations":[],"who_affected":null,"tier":null,"verified":{},"analyst_revisit_at":null,"first_public_at":"2026-06-30T13:19:13+00:00","kev":null,"cvss_vector":"CVSS:4.0/AV:L/AC:L/AT:P/PR:L/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X","cvss_by":"cvd@cert.pl","poc_count":0,"sources":[{"source":"govuln","external_id":"GO-2026-6620","url":"https://pkg.go.dev/vuln/GO-2026-6620","severity":null,"published_at":"2026-10-01T20:24:05+00:00","modified_at":"2026-10-01T20:24:05+00:00","first_seen_at":"2026-10-23T19:13:08+00:00","fetched_at":"2026-10-23T19:13:08+00:00","note":null},{"source":"epss","external_id":"CVE-2026-53433","url":"https://api.first.org/data/v1/epss?cve=CVE-2026-53433","severity":null,"published_at":null,"modified_at":null,"first_seen_at":"2026-10-23T19:13:43+00:00","fetched_at":"2026-10-23T19:13:43+00:00","note":null},{"source":"nvd","external_id":"CVE-2026-53433","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-53433","severity":null,"published_at":"2026-06-30T13:19:13+00:00","modified_at":"2026-07-02T19:01:45+00:00","first_seen_at":"2026-10-23T19:35:23+00:00","fetched_at":"2026-10-23T19:35:23+00:00","note":null}],"documents":[],"notice":"Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai"}