我的问题是,我试图模糊一个2阶段登录一个自定义的网络应用程序。
我需要做的是获取初始页面,它将为我提供一个反csrf令牌和一个sessionID。
在那里,我发布了一个用户名,他的响应将为我提供另一个令牌
第二个令牌将与反csrf令牌和sessionID一起在最后的帖子中使用,以向服务器提交密码。用户名仅通过第二个令牌链接到第二个帖子,在每次登录尝试时跟踪该标记,因此每次登录尝试都需要一个新的标记。
理想情况下,我希望使用入侵者在一个链中模糊这两个帖子,但将满足于一个宏链,它将允许从GET和第一个POST中的参数传递给入侵者,此时密码字段将被模糊化并提交给服务器。
我已经做了一些关于burp宏的研究,它看起来应该是可能的,尽管对于它们的正常使用来说是不正常的。我遇到的问题是提取参数并将其传递给入侵者。
任何帮助都将不胜感激,谢谢。
发布于 2017-09-27 09:20:16
这通常可以通过宏和会话处理规则来完成。据我所知,你有三个要求:
第一步是在浏览器中复制这些内容,并将Burp配置为代理。
然后创建一个具有请求1和2的宏。在宏编辑器中,选择request 2,然后单击Configure。如果CSRF令牌是一个隐藏字段,它应该会自动检测到这一点,在参数处理中,您将看到类似于"csrf_token -派生自先前的响应“之类的内容。如果没有-您可能需要手动配置这个。您可能需要根据请求1配置项,并定义自定义参数位置。然后,您可以使用Test来确认这是有效的。
接下来,创建一个会话处理规则。设置覆盖请求3的URL和路径的范围。添加运行宏的操作,选择宏,并使此选项启用:“用与最终宏响应匹配的参数更新当前请求”。
然后将请求3发送给Repeater。当您单击Go时,宏将运行,您将看到您的请求被更新为新的令牌值。如果没有--使用会话跟踪器来找出出了什么问题。
一旦它在Repeater中工作,您可以使用其他工具,如入侵者,扫描仪等。
关于在链中对两个请求进行模糊化的想法是很有趣的。我想不出一个简单的方法,但这将是一个有趣的扩展编写。
https://security.stackexchange.com/questions/170200
复制相似问题