利用Burp“宏”解决自动化 web fuzzer的登录问题

本文讲的是利用Burp“宏”解决自动化 web fuzzer的登录问题,本博文的主要内容是关于如何利用Burp Suite宏,帮助我们自动化完成需要手动输入payload的模糊测试工作。尽管许多安全测试人员可能会知道,这篇文章只是为那些尚未利用Burp宏的自动化功能的人所写的。

在我的渗透测试职业生涯中,在Web应用程序中执行参数和页面表单字段的模糊测试处理时,我遇到了一些与会话处理有关的挑战和困难。

在多种情况中,当你进行安全模糊测试时,web应用程序终止会话的行为,可能是因为一些安全策略导致的(例如:服务端获得了不安全的输入,用于注销的会话),或者在其他一些情况中,Burp spider功能或其他的网页爬虫被用于注销页面的参数的模糊测试时也会导致会话终止。

在这种情况下,要实现进一步的扫描,探测和请求都会变得无效。因为你必须重新执行登录操作并建立应用程序的会话。我以前遇到这种情况都是手动操作,这有点麻烦。在尝试找到解决方法时,我正在浏览Burp Suite的一些我不常用的功能,并根据我的好奇心,我注意到了Burp的会话处理功能。在探索了该功能选项并结合一些在线的搜索后,我的想法得到了验证,Burp通过一些基于规则的宏来处理上述挑战或困难。

简单来说,如果是因为模糊测试参数导致了会话终止,那么Burp可以使用凭据自动的登录应用程序,并继续扫描和启动爬虫。

自动化fuzzer需要的东西

1.   我使用的是Burp的免费版本(1.7.21)

2.   任何具有会话处理的网站(我使用经典的demo.testfire.net站点)

步骤1:
下图所显示的网站,具有登录功能:

存在缺陷的网站

步骤2:
此时,我打开设置好浏览器代理,并把Burp的拦截关掉,然后在表单中填写用户名和密码进行登录。

网站登录页面

步骤3:
下图显示的是我们登录网站后进入的页面:

登录字段值会显示登录的用户名

步骤4:
现在为了测试会话处理,我们将此页面请求发送到Burp的repeater选项卡,我们删除请求中的cookie,重放这个登录请求,观察一下因为会话中断而导致会话终止后会发生什么。

重放请求

步骤5:
我们可以看到页面会话是有效的,因为我们有一个正确的会话。下一步中我们尝试删除cookie并再次进行登录请求重放测试。

重放请求标签页

步骤6:
我们可以看到,会话被注销了,我们需要再次登录才可以继续测试。

会话终止

步骤7:
现在使用Burp宏来解决这个会话终止的问题。
Burp菜单导航到:项目选项 ->会话 ->会话处理规则

设置Burp宏

步骤8:

这里我们可以看到有一个默认规则 – 使用来自Burp的cookie jar的cookie。

Burp Cookie Jar

步骤9:
点击添加按钮创建一个新的规则。

添加新的宏规则

步骤10:
选择适合你和规则描述,然后在规则操作中选择“检查会话是否有效”

设定Burp宏的规则说明

步骤11:
单击确定后,将启动会话处理编辑器,显示的都是默认值:发出当前请求。保持不变并向下滚动到“如果会话无效,请执行以下操作:”

宏规则配置设置1

宏规则配置设置2

步骤12:
勾选“如果会话无效,执行下面的操作”并单击“Add”添加宏。此时,你将获得具有所有通过Burp代理的历史记录的宏记录器。单击并选择之前执行登录的那一条请求。最后点击确定。

步骤13:
单击确定后,宏编辑器将启动,你可以使用自定义的名称进行命名,还可以选择模拟宏,重新记录,重新分析这些功能。

宏记录器

步骤14:
在运行一次安全测试之前,配置一些参数来确定burp是否正确捕获了测试参数。

宏记录器参数检查

步骤15:
由于这里进行了全部的设置,所以我们可以执行一个测试宏的运行,点击确定。

步骤16:
现在点击Burp的范围(scope),并将URL范围设置为所有urls/suite scope/custom scope来指示宏在哪里运行。

步骤17:
我在这里设置为包含所有的URL。现在让我们再来测试一下我们的宏。

宏的范围设置

步骤18:
看下图,我们正在尝试访问网站的主页,而且在在repeater选项卡中没有cookies:

步骤19:
一旦我们启用了刚才添加的宏,cookies将自动添加到请求中,页面也将正常加载!

现在让我们来篡改下Cookie的值,检查一下会话是否有效。

执行宏

执行添加了cookie的宏

没毛病,就是这样了。这是一个十分简单的方式,Burp有助于创建基于会话的规则和宏。

我们可以使用我们的测试payload来简单地进行输入字段的模糊测试,来检查XSS,SQLi,IDOR等漏洞。即使应用程序由于测试中间不活动而超时,也可以在自动扫描或手动测试时保护会话免受垃圾输入,个别宏还可以帮助执行已经记录过的操作并将其重放给应用程序!

你可以进一步探索使用cookie jar/burp extender以及许多其他的一些功能选项!

原文发布时间为:2017年9月8日

本文作者:丝绸之路

本文来自合作伙伴嘶吼,了解相关信息可以关注嘶吼网站。

原文链接

时间: 2024-09-15 07:00:59

利用Burp“宏”解决自动化 web fuzzer的登录问题的相关文章

利用Burp“宏”自动化另类 SQLi

本文讲的是利用Burp"宏"自动化另类 SQLi,有许多工具可用于Web应用程序自动化测试.最著名的工具可能是sqlmap. 通过一些简单的命令,Sqlmap就可以轻松地识别和利用SQL注入漏洞.然而,诸如CSRF令牌或一些简单的反自动化技术,例如在表单中包含一个唯一的隐藏字段,就可以防止自动化工具正确工作. Burp Suite中的宏是绕过这些防护措施以便能够执行自动化测试的好方法,尽管那些防护措施实现起来可能很复杂. 在这篇文章中,我们会使用一个示例应用程序,用户可以在此应用程序中

利用WebBrowser彻底解决Web打印问题

原文:利用WebBrowser彻底解决Web打印问题 利用WebBrowser彻底解决Web打印问题(包括后台打印) BS架构下的打印大家是怎么解决的呢,我最近作了一个项目正好负责这一块,不仅要求打印页面的特定部分,还要求有后台的批量打印,在网上查了一些资料,最后终于解决了.抱着"取之于众 服务于众"的思想,我总结了一下,把它拿到网上来与大家分享,希望能帮助遇到类似问题的朋友. 我主要使用了IE内置的WebBrowser控件,无需用户下载和安装.WebBrowser有很多功能,除打印外

Powerfuzzer—自动化的自定义Web Fuzzer

Powerfuzzer是一款高度自动化的基于HTTP协议的Web Fuzzer (web应用程序),这是基于多个安全资源和网站收集的许多其它开源的Fuzzer而构建,可以完全自定义. Fuzzer是漏洞检查工具,可以发送数据到组件,可以完成数以万计的检查任务,帮助我们发现软件中的漏洞. Powerfuzzer旨在提供人性化.现代.有效的解决方案,其设计和编码具有模块化和可扩展性的特点,添加新的检查任务只需要添加新方法. Powerfuzzer建立在众多工具的基础上,例如cfuzzer. fuzz

真心求教关于自动化Web请求的开发问题,类似于开发一个12306桌面抢票软件,具体请进呢

问题描述 真心求教关于自动化Web请求的开发问题,类似于开发一个12306桌面抢票软件,具体请进呢 Web开发确实是博大精深,因为目前个人是开发手游,因为某些原因需要暂时做这么一个东西,但时间的问题不太允许我深入的研究Web开发,所以特来求教各位大神,我需要做的这个东西和之前一直流传的12306桌面抢票软件很像.就是根据某些网站写一个外挂软件,让一些需要手动完成的操作,代码来自动完成. 刚开始我以为Web请求一般都用一个拼接好的url直接访问,然后获得一些数据,接着再处理这些数据就好了.但事实证

【转】maven 自动化web应用集成测试

web应用集成测试的时候,各位还需要启动web容器,然后打开浏览器,输入ulr,然后看到浏览器的输出吗? 下面我们用maven做到自动化!     我们利用maven的生命周期和jetty插件来实现.     下面描述下做的自动化web集成测试实现的原理. 1,在生命周期pre-integration-test启动jetty容器 2,在生命周期integration-test中测试我们写的***IT.Java类 3,在post-integration-test shutdow jetty容器.

使用Rational Functional Tester V8.1来自动化Web应用程序的集成测试

节省时间并得到更多可靠的结果 简介:手工测试 Web 应用程序是一个错误倾向的任务.自动化测试将测试人员从输入测试数据和生成 结果中解放出来.本文描述了怎样使用 IBM Rational Functional Tester V8.1 来自动化 Web 应用程序的集成测试操作. 自动化集成测试的利益 在软件开发生命周期的集成测试期 间,单个软件构件会得到合并,并作为一个组进行测试.在一个 Java Enterprise Edition(JEE )Web 应用程序中,软件构件通常是 HTML 或者

win7系统利用修复工具解决电脑开机故障的方法

  大家在使用电脑的过程中,都会非常小心,生怕会电脑中毒,导致开机无法顺利进行.当遇到开机问题时,我们都是耐心等待,运气好时会开机,你可以根据内置的"疑难解答工具"进行修复,但是大多数是不幸的,连开机都开不了,这种情况大多数人会选择重装系统.但是重装系统非常麻烦,不仅浪费时间,而且很多文件会在重装系统时丢失.现在小编就来告诉大家一个简单的修复方法. 利用修复工具解决电脑开机故障的方法如下 1.选择修复计算机,即可启动修复,可以有效地解决一些可阻止启动的系统问题; 2.在启动修复后,它将

利用驱动人生解决扫描仪驱动无法安装的问题

  在我们的生活中,使用到打印机的时候比较多,但如果是在办公中,那么扫描仪也是比较常见的,通常情况下我们会使用扫描仪对证件或相关文件扫面成图片,不过有部分用户反映在链接扫面议后,出现驱动安装失败的问题,如果驱动安装失败,那么就会意味着扫描仪将无法正常使用,今天河东小编为大家带来了一篇利用驱动人生解决扫描仪驱动无法安装的问题,该方法能解决扫描仪无法安装的问题,有需要的朋友可以尝试下.         解决扫描仪驱动无法安装的问题 方法一:将扫描仪连接到电脑,然后下载并且安装驱动人生,安装后通过驱动

解决apache Web服务器网页显示乱码的方法

解决的方法之一:   (1)在每一个网页里增加 <meta http-equiv="Content-Language" content="zh-cn">; <meta http-equiv="Content-Type" content="text/html; charset=GB2312">; 并在APACHE的httpd.conf配置文件中将AddDefaultCharset ISO-8859-1 改