mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-26 22:52:06 +00:00
5.3 KiB
5.3 KiB
hop-by-hop headers
☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥
- 您在网络安全公司工作吗?想要在HackTricks中看到您的公司广告?或者想要访问PEASS的最新版本或下载HackTricks的PDF?请查看订阅计划!
- 发现我们的独家NFT收藏品The PEASS Family
- 获取官方PEASS和HackTricks周边
- 加入 💬 Discord群 或 电报群 或在Twitter上**🐦@carlospolopm.**
- 通过向hacktricks repo和hacktricks-cloud repo提交PR来分享您的黑客技巧。
这是一篇关于https://nathandavison.com/blog/abusing-http-hop-by-hop-request-headers的文章摘要
逐跳头部是特定于单个传输级连接的头部,主要用于HTTP/1.1在两个节点之间(如客户端-代理或代理-代理)管理数据,并且不应转发。标准的逐跳头部包括Keep-Alive
、Transfer-Encoding
、TE
、Connection
、Trailer
、Upgrade
、Proxy-Authorization
和Proxy-Authenticate
,如RFC 2616中定义。通过Connection
头部可以将其他头部指定为逐跳头部。
滥用逐跳头部
代理不正确处理逐跳头部可能导致安全问题。虽然预期代理会删除这些头部,但并非所有代理都会这样做,从而产生潜在的漏洞。
测试逐跳头部处理
可以通过观察服务器响应的变化来测试逐跳头部的处理方式,当特定头部被标记为逐跳时。工具和脚本可以自动化此过程,识别代理如何管理这些头部,并可能发现配置错误或代理行为。
滥用逐跳头部可能导致各种安全问题。以下是一些示例,演示了如何操纵这些头部进行潜在攻击:
使用X-Forwarded-For
绕过安全控制
攻击者可以操纵X-Forwarded-For
头部来绕过基于IP的访问控制。此头部通常由代理使用来跟踪客户端的原始IP地址。但是,如果代理将此头部视为逐跳并在没有适当验证的情况下转发它,攻击者可以伪造其IP地址。
攻击场景:
- 攻击者向代理后面的Web应用程序发送HTTP请求,包括在
X-Forwarded-For
头部中放入虚假IP地址。 - 攻击者还包括
Connection: close, X-Forwarded-For
头部,促使代理将X-Forwarded-For
视为逐跳。 - 配置错误的代理将请求转发给Web应用程序,但不包含伪造的
X-Forwarded-For
头部。 - Web应用程序未看到原始的
X-Forwarded-For
头部,可能将请求视为直接来自受信任代理,从而可能允许未经授权的访问。
通过逐跳头部注入进行缓存投毒
如果缓存服务器根据逐跳头部错误地缓存内容,攻击者可以注入恶意头部来投毒缓存。这将向请求相同资源的用户提供不正确或恶意内容。
攻击场景:
- 攻击者发送带有不应缓存的逐跳头部的请求到Web应用程序(例如
Connection: close, Cookie
)。 - 配置不良的缓存服务器不会删除逐跳头部,并缓存响应特定于攻击者的会话。
- 请求相同资源的未来用户接收到缓存响应,该响应是为攻击者定制的,可能导致会话劫持或敏感信息泄露。
☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥
- 您在网络安全公司工作吗?想要在HackTricks中看到您的公司广告?或者想要访问PEASS的最新版本或下载HackTricks的PDF?请查看订阅计划!
- 发现我们的独家NFT收藏品The PEASS Family
- 获取官方PEASS和HackTricks周边
- 加入 💬 Discord群 或 电报群 或在Twitter上**🐦@carlospolopm.**
- 通过向hacktricks repo和hacktricks-cloud repo提交PR来分享您的黑客技巧。