1

我有一个使用 OAuth 让用户使用 Linkedin 登录的应用程序。

存在应用程序或浏览器快速连续向linkedin 发送两个OAuth 请求的问题,这导致LinkedIn 在几毫秒内返回两个响应。

这两个重复的请求最终在数据库中创建了两个用户。

这里的主要保护将是添加 DB 端验证以防止这种情况发生,但希望能够首先重现此问题。

我正在使用 Burp Suite 将请求拦截回我的应用程序。一旦我的请求被截获,我如何在毫秒内重播请求两次?

此外,是否有更好的方法来拦截返回请求并快速重播以重现我的问题?

谢谢!

4

2 回答 2

2

您可以在 Burp Suite 中与入侵者一起进行操作。您可以将请求发送到入侵者模块(右键单击请求并“发送给入侵者”)然后您可以在不重要的标题中选择一个字符,因为入侵者必须更改请求中的某些内容以使其重复。之后,在有效负载选项卡中,将您在有效负载位置选择的值添加到有效负载选项列表中。这样,Burp 将发送两个请求,一个是原始请求,一个是您添加的值(但如果您使用相同的值,那么它将基本相同)。

如果一切准备就绪,然后在“入侵者”菜单中使用“开始攻击”启动入侵者。

于 2016-02-11T15:40:42.727 回答
2

循环重复请求 Burp Intruder 可以使用提供的有效负载进行各种模糊攻击。Burp 中继器可以重复请求。但是,如果您需要在循环中一次又一次地重复某个请求,那么这里就是执行此操作的技术。这是通过带有“Null payloads”的 Burp Intruder 完成的。

  1. 在代理选项卡中选择您的请求,然后单击“发送给入侵者”。

  2. 在 Intruder 中,在 Positions 选项卡中单击“Clear”以清除所有位置。我们不想为任何位置提供有效载荷,只需重复请求即可。

  3. 在 Payloads 选项卡中,选择 Payload type :“Null payloads”。在“有效负载选项”的下一部分中,选择“无限期继续”。这将生成无限数量的有效载荷,但由于我们没有指定任何位置,因此有效载荷不会应用于请求中的任何位置。如果您想将请求重复特定次数,请在“生成 _____ 有效负载”框中输入一个数字。然后它只会循环那么多次。

4.然后开始攻击。

于 2017-06-28T06:59:18.897 回答