CVE-2026-42551Flight PHP微框架在3.18.1之前的版本中存在漏洞,`Request::getMethod()`无条件接受`X-HTTP-Method-Override`头和`_method`参数。这导致原本安全的GET请求可被伪造为DELETE或PUT请求,从而绕过中间件安全检查,引发CSRF攻击或缓存投毒。
该漏洞源于Flight框架在处理HTTP方法时的逻辑缺陷。`Request::getMethod()`方法在解析请求时,会优先检查`X-HTTP-Method-Override`请求头和`$_REQUEST['_method']`参数,并直接使用其值覆盖原始的HTTP请求方法(如GET)。由于缺乏对原始请求方法安全性的校验(即未限制仅允许POST等非安全方法进行覆盖),攻击者可以诱导用户访问恶意链接。当用户发起GET请求时,攻击者可通过添加上述头或参数,欺骗后端将其识别为DELETE或PUT等破坏性请求。这使得攻击者能够绕过针对不安全动词的中间件防护,执行未授权的修改或删除操作,或利用CDN缓存机制进行投毒。