重复请求(使用Burp Suite或类似工具)

时间:2016-02-02 00:01:58

标签: http oauth burp

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

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

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

这里的主要保护是添加数据库端验证以防止这种情况,但是希望能够首先重新产生这个问题。

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

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

谢谢!

2 个答案:

答案 0 :(得分:1)

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

如果一切准备就绪,那么在“入侵者”菜单中以“开始攻击”启动入侵者。

答案 1 :(得分:1)

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

完成的
  1. 在代理选项卡中选择您的请求,然后点击"发送给入侵者"。

  2. 在Intruder的“职位”标签中,点击"清除"清除所有职位。我们不想为任何位置提供有效负载,只需重复请求即可。

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

  4. 4.然后开始攻击。