Untrusted Host or forwarding-header origin construction
The application constructs a security-sensitive origin from request metadata that an attacker can influence.
Candidate CWE: CWE-346
Test hypothesis#
In the local proxy/application topology, capture a password-reset link for your own account. Change one Host or forwarded-origin input to a controlled sink and compare generated links and routing. Preserve the normal proxy path; direct-backend behavior is a separate reachability hypothesis.
Evidence required#
Show which hop accepted the untrusted value, the resulting sensitive link or policy decision, and a controlled artifact demonstrating impact. Treat cache poisoning as a separate chain requiring a second clean client.
Rule out false positives#
An echoed Host header or a denied invalid host is not a takeover. A backend trusted header that external callers cannot set is not attacker-controlled in that deployment.
Playbook and command references#
- Proxy normalization, cache isolation, and request boundaries — Investigate layered HTTP behavior with isolated cache keys and controlled front-end/back-end traffic.
- Authentication, recovery, federation, and session lifecycle — Test registration, recovery, identity changes, invitations, SSO enforcement, and deprovisioning as one account state machine.
Find the associated command snippets
Referenced by these target playbooks#
Report checklist#
- Capture the affected version, configuration, identities, and object ownership.
- Preserve a valid baseline and a negative control.
- Reproduce the forbidden data access, action, or state change on controlled fixtures.
- Explain the intended security rule and why the observed behavior violates it.
- State prerequisites, uncertainty, cleanup, and the smallest demonstrated impact.
Conditional ATT&CK mapping#
No direct ATT&CK mapping selected. Record the weakness and demonstrated impact without forcing an adversary-behavior classification. See the mapping guide.