CVE-2026-4519: webbrowser.open() allows leading dashes in URLs
The webbrowser.open() API would accept leading dashes in the URL which
could be handled as command line options for certain web browsers. New
behavior rejects leading dashes. Users are recommended to sanitize URLs
prior to passing to webbrowser.open().
Security readout for executives and security teams
Plain-English summary
Python applications that open attacker-influenced links through webbrowser.open() may pass a leading-dash value to certain browsers as a command-line option instead of a URL. This could affect data confidentiality, integrity, and availability. Exploitation requires user interaction and specific browser handling; remote code execution is not established by the supplied evidence.
Executive priority
Prioritize prompt assessment for desktop tools, automation, and user-facing applications that open externally supplied links. Patch exposed systems through supported vendor channels and add input validation. Systems without attacker-influenced webbrowser.open() inputs are lower priority, but version status should still be confirmed because the supplied affected-range data is incomplete.
Technical view
CVE-2026-4519 is an input-validation and argument-injection weakness in CPython’s webbrowser.open(). Previously, URL values beginning with a dash were accepted and could be interpreted as command-line options by certain browsers. Updated behavior rejects leading dashes. The supplied CVSS 3.1 score is 7.1: network-reachable, high complexity, no privileges, user interaction required.
Likely exposure
Exposure is most likely in applications that pass untrusted or remotely influenced strings directly to webbrowser.open() and launch a browser that interprets leading dashes as options. The supplied version data does not clearly define complete affected or fixed ranges, so deployed Python packages require vendor-specific verification.
Exploitation context
The source bundle does not establish active exploitation, and the CVE is not listed as KEV. Successful abuse depends on attacker control of the opened value, a leading dash, compatible browser behavior, and user interaction. High attack complexity limits broad exploitation, but potential confidentiality and integrity impacts remain significant.
Researcher notes
The weakness maps to CWE-20 and CWE-88. The key trust boundary is between a URL-like application value and the browser process argument list. Researchers should evaluate data flow, browser selection, operating-system launch behavior, and vendor backports without assuming all browsers or CPython packages are exploitable. The supplied sources show multiple patches but do not provide a definitive fixed-version table.
Mitigation direction
Install the applicable CPython or operating-system vendor security update after confirming affected package versions.
Reject URL inputs beginning with a dash before calling webbrowser.open().
Allow only expected URL schemes and trusted input sources.
Review Python and Red Hat advisories for platform-specific remediation guidance.
Validation and detection
Inventory applications and scripts that call webbrowser.open() or related browser-controller methods.
Trace whether users, remote services, documents, or messages can influence values passed to those calls.
Confirm deployed Python packages include the vendor correction that rejects leading-dash URLs.
Verify application-level validation rejects leading dashes and permits only intended URL schemes.
Review browser-launch telemetry for anomalous leading-dash inputs, where such logging exists.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cwe · low confidence lookup
CWE-20: Exact CWE lookup
Use the exact CWE identifier as the starting point before reviewing related ATT&CK behavior. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.
Command injection weaknesses can lead defenders to review execution techniques and command interpreter telemetry. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
2CVSS vectors
5Timeline events
3ADP providers
56Source links
SSVC decision data
CISA-ADPCISA Coordinator
Timestamp
Version
2.0.3
Exploitation: noneAutomatable: noTechnical Impact: total
CVSS vector scores
2 official scores
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.