Request smuggling lets an attacker make one user’s request influence another request on the same back-end connection. Request tunnelling is different because the attacker can send complete smuggled requests through a connection that the front end does not reuse, but the results are often only visible to the attacker. Both arise from desync, but their impact and confirmation techniques differ.
Why This Matters for Security Teams
HTTP/2 request smuggling and HTTP/2 request tunnelling both exploit desynchronisation, but they create different operational risks. Smuggling is dangerous because a crafted request can influence another user’s traffic on a shared back-end connection. Tunnelling is subtler: the attacker can often send complete hidden requests that traverse a path the front end does not reuse, so impact may be limited to the attacker while still proving a control gap. For defenders, the distinction matters because detection, logging, and blast radius are not the same. This is especially relevant when HTTP/2 is terminated at a proxy or gateway that translates to HTTP/1.1 or another internal protocol. The boundary between front-end parsing and back-end forwarding becomes the fault line, and that is where desync bugs emerge. NIST’s control guidance in NIST SP 800-53 Rev 5 Security and Privacy Controls is useful here because it reinforces disciplined boundary protection and monitoring, but it does not remove the protocol ambiguity by itself. The practical lesson is that transport-layer correctness has to be validated, not assumed. NHI Management Group has also documented how often identity and access sprawl creates hidden exposure; only 5.7% of organisations have full visibility into their service accounts, according to the Ultimate Guide to NHIs — What are Non-Human Identities. In practice, many security teams encounter desync only after unusual proxy behaviour or a downstream incident has already made the gap visible, rather than through intentional validation.How It Works in Practice
At a technical level, both issues depend on disagreement about where one request ends and the next begins. In HTTP/2, attackers may exploit inconsistent handling of pseudo-headers, stream state, or translation to HTTP/1.1 at the edge. The difference is in what happens after the desync:- With request smuggling, the attacker causes one request to be interpreted as part of another user’s request or connection context.
- With request tunnelling, the attacker often uses the mismatch to carry a complete hidden request that the front end does not visibly process in the same way.
- Smuggling usually creates a shared-blast-radius problem, while tunnelling can produce attacker-only observations that still prove parser inconsistency.
Common Variations and Edge Cases
Tighter protocol validation often increases testing and tuning overhead, requiring organisations to balance compatibility against security assurance. That tradeoff becomes sharper in mixed estates where HTTP/2, HTTP/1.1, gRPC, and proprietary gateways coexist. Best practice is evolving, and there is no universal standard for this yet, especially when vendors implement partial RFC support or custom translation layers. A common edge case is “successful” tunnelling that does not immediately affect another victim. Teams sometimes dismiss it because the visible impact seems low, but it still proves a desync condition that may be exploitable later in a different topology. Another edge case is infrastructure that normalises requests differently on idle vs busy connections, which can make lab findings hard to reproduce in production. That is why confirmation should rely on controlled differential testing, not a single positive response. The Ultimate Guide to NHIs — What are Non-Human Identities is useful here as a reminder that hidden service traffic is often where these flaws persist longest.Standards & Framework Alignment
This section maps relevant standards and security frameworks to the operational risks and controls described in this guidance.
OWASP Agentic AI Top 10, OWASP Non-Human Identity Top 10 and CSA MAESTRO address the attack and risk surface, while NIST AI RMF and NIST CSF 2.0 set the governance and control requirements practitioners need to meet.
| Framework | Control / Reference | Relevance |
|---|---|---|
| OWASP Agentic AI Top 10 | Covers protocol abuse and request desync testing in modern app stacks. | |
| OWASP Non-Human Identity Top 10 | NHI-06 | Hidden service-to-service traffic often carries desync exploitation paths. |
| CSA MAESTRO | Agentic and automated workloads can amplify abuse of proxy and gateway desync. | |
| NIST AI RMF | Supports operational risk management for ambiguous parser behaviour. | |
| NIST CSF 2.0 | DE.CM-1 | Desync flaws require monitoring and anomaly detection at boundaries. |
Inventory and monitor service traffic paths that may carry malformed or tunneled requests.
Related resources from NHI Mgmt Group
- What is the difference between network trust and request-level identity trust?
- What is the difference between access request automation and access governance?
- What is the difference between birthright access and request-based access?
- What is the difference between two-factor authentication and MFA in practice?
Deepen Your Knowledge
Reviewed and updated by the NHIMG editorial team on August 31, 2026.
NHI Mgmt Group — the #1 independent authority on Non-Human Identity, IAM, and Agentic AI security. nhimg.org