Skip to main content

Inconsistent Interpretation of HTTP Requests ('HTTP Request/Response Smuggling')

CVE-2023-46121

Severity Low
Score 3.7/10

Summary

yt-dlp is a youtube-dl fork with additional features and fixes. The Generic Extractor in yt-dlp versions 2022.10.04 through 2023.11.13.232715.dev0 are vulnerable to an attacker setting an arbitrary proxy for a request to an arbitrary url, allowing the attacker to MITM the request made from yt-dlp's HTTP session. This could lead to cookie exfiltration in some cases. The fixed version removed the ability to smuggle `http_headers` to the Generic extractor, as well as other extractors that use the same pattern. Users are advised to upgrade. Users unable to upgrade should disable the Generic extractor (or only pass trusted sites with trusted content) and ake caution when using `--no-check-certificate`.

  • HIGH
  • NETWORK
  • NONE
  • UNCHANGED
  • NONE
  • NONE
  • LOW
  • NONE

CWE-444 - HTTP Request Smuggling

Entities such as web servers, web caching proxies, and application firewalls could parse HTTP requests differently. When there are two or more such entities in the path of an HTTP request, an attacker can send a specially crafted HTTP request that is seen as two different sets of requests by the attacked devices, allowing the attacker to smuggle a request into one device without the other device being aware of it. Such a vulnerability can prove devastating, for it enables further attacks on the application, like web cache poisoning, session hijacking, cross-site scripting, security bypassing, and sensitive information exposure.

Advisory Timeline

  • Published