{"id":"CVE-2026-120637","kind":"vulnerability","aliases":["CVE-2026-120637"],"related":[],"title":"Perl CGI module reads request parameters from command line arguments","description":"CGI versions before 5.00 for Perl take request parameters from the process command line arguments for an unrecognised REQUEST_METHOD.\n\nFor a REQUEST_METHOD such as OPTIONS, CGI falls through to its offline debugging mode, which is on by default, and builds the parameters and path_info from the process's command line arguments.","summary":"CGI versions before 5.00 for Perl, when given an unrecognised REQUEST_METHOD such as OPTIONS, fall back to offline debugging mode and build request parameters from the process command line. The sources do not state a direct attacker impact beyond that parameter source being wrong.","severity":"unknown","cvss":null,"epss":null,"exploited":false,"exploited_at":null,"products":[],"ecosystems":[],"tags":["cgi","package","perl","self-hosted"],"not_affected_if":["no-perl-cgi","static-site"],"how_to_check":"- Check the installed CGI module version with `perl -MCGI -e 'print $CGI::VERSION'`\n- Confirm whether a web application uses the CGI module for request handling","fix":"- Move to CGI `5.00` or later, per the linked patch","status":"open","published_at":"2026-11-04T00:17:24+00:00","first_seen_at":"2026-11-04T00:46:16+00:00","triaged_at":"2026-11-04T00:48:19+00:00","updated_at":"2026-11-04T00:48:19+00:00","category":"package","confidence":0.5,"triage":{"at":"2026-11-04T00:48:19Z","model":"claude-haiku-5-5","output":{"fix":"- Move to CGI `5.00` or later, per the linked patch","reach":"internet","title":"Perl CGI module reads request parameters from command line arguments","impact":"low","summary":"CGI versions before 5.00 for Perl, when given an unrecognised REQUEST_METHOD such as OPTIONS, fall back to offline debugging mode and build request parameters from the process command line. The sources do not state a direct attacker impact beyond that parameter source being wrong.","audience":"developers","category":"package","nicknames":[],"who_cares":["perl","cgi","self-hosted"],"confidence":0.5,"fix_status":"available","needs_auth":"unknown","worst_case":"unknown; request parameters may come from attacker-influenced process arguments","analyst_note":"Confirm the attacker-controlled impact and affected version range from the NVD entry and the linked patch.","how_to_check":"- Check the installed CGI module version with `perl -MCGI -e 'print $CGI::VERSION'`\n- Confirm whether a web application uses the CGI module for request handling","plain_action":"","needs_analyst":true,"not_affected_if":["no-perl-cgi","static-site"],"who_is_affected":"Applications that use the Perl CGI module to parse incoming web requests, particularly those that accept unusual REQUEST_METHOD values. Systems that do not run Perl CGI scripts can skip it. The sources do not say how an attacker would use the command line parameters.","user_interaction":"unknown","needs_special_setup":"unknown","severity_if_unknown":"low"},"cost_usd":0.000684,"input_tokens":4132,"output_tokens":541,"severity_before":"unknown"},"analyst_status":null,"analyst_note":null,"search":"'-120637':13A,16A '-2026':12A,15A '5.00':26B,71C 'argument':10A,82C,121C 'attack':60B 'back':39B 'beyond':62B 'build':45B,109C 'cgi':2A,17B,23B,68C,95C 'command':8A,51B,80C,119C 'cve':11A,14A 'debug':42B,101C 'default':107C 'direct':59B 'fall':38B,96C 'given':30B 'host':22B 'impact':61B 'info':114C 'line':9A,52B,81C,120C 'method':34B,87C,91C 'mode':43B,102C 'modul':3A 'offlin':41B,100C 'option':37B,94C 'packag':18B 'paramet':6A,47B,64B,76C,111C 'path':113C 'perl':1A,19B,28B,73C 'process':50B,79C,117C 'read':4A 'request':5A,33B,46B,75C,86C,90C 'self':21B 'self-host':20B 'sourc':54B,65B 'state':57B 'take':74C 'unrecognis':32B,85C 'version':24B,69C 'wrong':67B","nicknames":[],"mitigations":[],"who_affected":"Applications that use the Perl CGI module to parse incoming web requests, particularly those that accept unusual REQUEST_METHOD values. Systems that do not run Perl CGI scripts can skip it. The sources do not say how an attacker would use the command line parameters.","tier":"C","verified":{},"analyst_revisit_at":null,"fix_status":"available","audience":"developers","plain_action":null,"pkeys":[],"ptokens":[],"labels":["cgi","package","perl","selfhosted","unknown"],"campaign_type":null,"first_public_at":"2026-11-04T00:17:24+00:00","kev":null,"cvss_vector":null,"cvss_by":null,"poc_count":0,"sources":[{"source":"nvd","external_id":"CVE-2026-120637","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-120637","severity":null,"published_at":"2026-11-04T00:17:24+00:00","modified_at":"2026-11-04T00:17:24+00:00","first_seen_at":"2026-11-04T00:46:16+00:00","fetched_at":"2026-11-04T00:46:16+00:00","note":null}],"documents":[{"id":62116,"url":"https://github.com/leejo/CGI.pm/commit/b753ff75a3bc4554c075cc37c1db605a55297029.patch","title":"Patch: github.com","kind":"other","source":"nvd","publisher":"vendor","text":null,"published_at":null,"relation":"fix","confidence":null,"note":"Patch: github.com"}],"notice":"Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai"}