CVE-2026-42874Microdot是一个极简的Python Web框架。在2.6.1版本之前,其Response.set_cookie()方法未对字符串参数进行充分过滤,未能检测到\r\n序列,可能导致HTTP响应头注入攻击。利用该漏洞需要攻击者先攻陷客户端(如通过XSS),随后发送恶意信息以在服务器端设置包含注入字符的Cookie。
Microdot是一个极简主义的Python Web框架,该漏洞存在于其核心响应处理逻辑中。在2.6.1版本之前,Response.set_cookie()方法在构造HTTP Set-Cookie头部时,未对传入的键值对进行严格的输入验证和清洗。具体来说,该方法未能识别并转义特殊的控制字符序列,即回车符(\r)和换行符(\n)。在HTTP协议中,头部字段之间通过CRLF序列分隔。如果攻击者能够控制传入set_cookie()的数据,并注入\r\n序列,即可欺骗服务器在响应中生成任意的新HTTP头部,从而构成CRLF注入攻击。然而,利用该漏洞存在一定的前置条件。攻击者必须先攻陷客户端环境,例如利用独立的跨站脚本(XSS)漏洞,从而诱导受害者向服务器发送包含恶意CRLF序列的请求。一旦服务器处理该请求并设置Cookie,响应报文将被篡改。这可能被进一步利用来进行HTTP响应拆分、缓存投毒或会话劫持等攻击。