FixVibe

// 探测 / 聚焦

HTTP Request Smuggling

Front-end proxy and back-end disagree on where one request ends — attacker rides the seam.

概要

Request smuggling is the bug James Kettle made famous and that defenders are still catching up to. It exploits a simple structural fact: any time HTTP traffic flows through two parsers in series — CDN to origin, load balancer to app server, reverse proxy to upstream — those two parsers must agree on where one request ends and the next begins. When they disagree by even one byte, the attacker rides the seam. The bug is invisible from logs (the proxy sees one well-formed request; the origin sees two) and the consequences are unbounded: cache poisoning, session theft, WAF bypass, internal-header injection. It's the rare web vulnerability where the network layer itself is what's broken.

運作方式

HTTP request smuggling appears when intermediaries disagree about request boundaries. That parser mismatch can desynchronize traffic and expose users or internal routes to cross-request impact.

影响范围

Cache poisoning across CDN edges — one malicious request taints the cached response for every later visitor of that URL. Session hijacking via prepended requests that read responses meant for the next user. WAF bypass — the WAF sees the harmless outer request and forwards bytes that the origin parses as a privileged inner request. Authentication header injection: smuggle a request with `X-Authenticated-User: admin` past a WAF that strips that header on the outer request. Internal-network probing when origin trusts proxy-supplied headers.

// what fixvibe checks

What FixVibe checks

FixVibe checks this class with verified-domain active testing that is bounded, non-destructive, and evidence-driven. Public reports describe the affected surface and remediation. For check-specific questions about exact detection heuristics, active payload details, or source-code rule patterns, contact support@fixvibe.app.

铁壁防御

Use HTTP/2 end-to-end where possible — its frame-based wire format eliminates the CL/TE ambiguity entirely. When HTTP/1.1 traffic is unavoidable, ensure proxy and origin use the same parser implementation (or at least same conformance posture) and configure both to reject ambiguous requests outright: requests with both Content-Length and Transfer-Encoding headers, requests with malformed chunked encoding, requests with duplicate or whitespace-padded TE headers. Modern load balancers (HAProxy 2.x, nginx 1.21+, AWS ALB) have flags for strict parsing — turn them on. Disable HTTP keep-alive between proxy and origin if you can't otherwise solve it (closes the persistent-connection vector that smuggling exploits, at the cost of latency). Run a tool like Burp's smuggling scanner or HTTP Request Smuggler periodically against your stack — the bug is hard to notice without active probing.

// 在你自己的应用上跑一遍

放心继续发布,FixVibe 持续帮你看守风险。

FixVibe 像攻击者一样对你的应用公开面进行压力测试 —— 无代理、无安装、无信用卡。我们持续研究新的漏洞模式,并把它们转化成实用检查和可直接用于 Cursor、Claude、Copilot 的修复方案。

主動探測
103
本类别中触发的测试
模块
27
专属 主動探測 检查
每次扫描
384+
跨所有类别的测试
  • 免费 —— 无需信用卡,无需安装,无需 Slack 通知
  • 只需粘贴 URL —— 我们爬取、探测、生成报告
  • 按严重程度分级,去重至只剩信号
  • 最新 AI 修复提示词,可直接粘贴到 Cursor、Claude、Copilot
运行免费扫描

// 最新检查 · 实用修复 · 安心发布

HTTP Request Smuggling — 漏洞聚焦 | FixVibe · FixVibe