GitHub Advisoryadvisory · PyPI
GHSA-7wc8-wvc4-m498 Microdot has HTTP response splitting in Response.set_cookie()
LOW
Official page ↗
- Aliases
- CVE-2026-42874
- Ecosystem
- PyPI
- Packages
- microdot
- Severity
- Low
- CVSS vector
- CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N
- Weaknesses
- CWE-113
- Reviewed
- 2026-05-05
Affected packages
• PyPI microdot: < 2.6.1 → fixed in 2.6.1
Description
Impact
The `Response.set_cookie()` method does not sanitize its string arguments, and in particular will not detect the presence of the `\r\n` sequence in them. This can be a potential source of header injection attacks.
For a header injection attack through this issue to be possible, an attacker must first infiltrate the client (for example through an independent XSS attack), so that it can send malicious information that is destined to be stored in a cookie by the server on behalf of the victim. An attacker that infiltrates one client can only orchestrate a header injection attack for that client, all other clients that were not infiltrated are safe.
Patches
Upgrade to version 2.6.1.
Workarounds
Do not pass untrusted data to the `Response.set_cookie()` method.
Related
Alias · CVE (1)
- CVE-2026-42874 Microdot is a minimalistic Python web framework. vulnerability
Weakness · CWE (1)
- CWE-113 Improper Neutralization of CRLF Sequences in HTTP Headers weakness
References
- https://github.com/miguelgrinberg/microdot/security/advisories/GHSA-7wc8-wvc4-m498 web
- https://nvd.nist.gov/vuln/detail/CVE-2026-42874 advisory
- https://github.com/miguelgrinberg/microdot/commit/99b281b45faef8472410f2d56bfef496dfbd95d5 web
- https://github.com/miguelgrinberg/microdot package
- https://github.com/miguelgrinberg/microdot/blob/main/CHANGES.md web