6.9 KiB
参数污染
☁️ HackTricks云 ☁️ -🐦 推特 🐦 - 🎙️ Twitch 🎙️ - 🎥 YouTube 🎥
- 你在一家网络安全公司工作吗?想要在HackTricks中看到你的公司广告吗?或者你想要获得PEASS的最新版本或下载PDF格式的HackTricks吗?请查看订阅计划!
- 发现我们的独家NFTs收藏品The PEASS Family
- 获取官方PEASS和HackTricks周边产品
- 加入💬 Discord群组 或 Telegram群组,或者关注我在Twitter上的🐦@carlospolopm。
- 通过向hacktricks repo 和hacktricks-cloud repo 提交PR来分享你的黑客技巧。
摘自 https://medium.com/@shahjerry33/http-parameter-pollution-its-contaminated-85edc0805654
摘要:
HTTP参数污染(HPP)是指为了实现特定的恶意任务而污染Web应用程序的HTTP参数。它指的是操纵网站在HTTP请求期间接收到的参数的方式。它改变了网站的行为,使其与预期的行为不同。HTTP参数污染是一种简单但有效的攻击方式。
当你污染任何参数时,代码只在服务器端运行,对我们来说是不可见的,但我们可以在屏幕上看到结果。中间的过程是一个黑盒子。
例如,有一个URL https://www.anybank.com/send,它有三个参数:
- from:
- to:
- amount:
URL:https://www.anybank.com/send/?from=accountA&to=accountB&amount=10000
现在这是一个正常的URL,它将从accountA向accountB进行一笔10000的交易,但是如果我们添加另一个相同的参数**“from:”**
那么URL将变为https://www.anybank.com/send/?from=accountA&to=accountB&amount=10000&from=accountC
当这个URL进行10000的交易时,它将从accountC中扣除,而不是从accountA中扣除。这就是你如何在HTTP参数污染攻击中操纵参数。尽管这个漏洞的范围不仅限于GET请求,你也可以对基于POST的请求进行这种攻击。你可以在许多地方尝试这个漏洞,比如密码更改、2FA、评论、个人资料照片上传、传递API密钥的参数、OTP等。
当你操纵任何参数时,它的操纵取决于每个Web技术如何解析它们的参数。你可以使用“Wappalyzer”来识别Web技术。下面是一些技术及其参数解析的屏幕截图。技术及其参数解析
我想分享我发现的一个HPP漏洞,我能够利用这个漏洞接管一个账户。
我是如何发现这个漏洞的?
- 我进入了该程序的登录页面,它要求输入一个OTP进行登录
发送OTP
-
我输入了一个电子邮件地址,并点击“发送一次性密码”
-
我使用burp suite拦截了请求,并使用相同的参数添加了另一个电子邮件(我为测试目的创建了两个电子邮件)Burp请求
- 我在我的另一个账户radhika....@gmail.com上收到了一个shrey....@gmail.com的OTP OTP
- 我复制了OTP,并在该程序的登录界面上输入了shrey....@gmail.com,我输入了这个OTP,然后我就进入了这个账户。接管账户
所以这里发生的情况是后端应用程序使用第一个“email”参数的值生成了一个OTP,并使用第二个“email”参数的值提供了这个值,这意味着shrey....@gmail.com的OTP被发送到radhika....@gmail.com。
**注意:**在第4步的图像中,我收到了一个发给radhika....@gmail.com的OTP,我感到困惑,因为消息上写着Hi Radhika,所以我以为参数没有被污染,OTP是给radhika....@gmail.com的,但是当我在shrey....@gmail.com上尝试了这个OTP时,它起作用了。
Flask和PHP
在这篇文章中,你可以看到在运行在Apache HTTP服务器上的Flask和PHP中,像a=1&a=2
这样的HTTP查询会被解释为不同的结果。在Flask中,参数将是1
(第一次出现),而在PHP中,参数将是2
(最后一次出现)。
☁️ HackTricks云 ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥
- 你在一家网络安全公司工作吗?想要在HackTricks中宣传你的公司吗?或者想要获取PEASS的最新版本或下载PDF格式的HackTricks吗?请查看订阅计划!
- 发现我们的独家NFTs收藏品——The PEASS Family
- 获取官方PEASS和HackTricks周边产品
- 加入💬 Discord群组或电报群组,或者关注我在Twitter上的🐦@carlospolopm。
- 通过向hacktricks repo 和hacktricks-cloud repo 提交PR来分享你的黑客技巧。