标签:
1.Target(目标)——显示目标目录结构的的一个功能 2.Proxy(代理)——拦截HTTP/S的代理服务器,作为一个在浏览器和目标应用程序之间的中间人,允许你拦截,查看,修改在两个方向上的原始数据流。 3.Spider(蜘蛛)——应用智能感应的网络爬虫,它能完整的枚举应用程序的内容和功能。 4.Scanner(扫描器)——高级工具,执行后,它能自动地发现web 应用程序的安全漏洞。 5.Intruder(入侵)——一个定制的高度可配置的工具,对web应用程序进行自动化攻击,如:枚举标识符,收集有用的数据,以及使用fuzzing 技术探测常规漏洞。 6.Repeater(中继器)——一个靠手动操作来触发单独的HTTP 请求,并分析应用程序响应的工具。 7.Sequencer(会话)——用来分析那些不可预知的应用程序会话令牌和重要数据项的随机性的工具。 8.Decoder(解码器)——进行手动执行或对应用程序数据者智能解码编码的工具。 9.Comparer(对比)——通常是通过一些相关的请求和响应得到两项数据的一个可视化的“差异”。 10.Extender(扩展)——可以让你加载Burp Suite的扩展,使用你自己的或第三方代码来扩展Burp Suit的功能。 11.Options(设置)——对Burp Suite的一些设置
导航栏
|
|||
Burp | BurpSuite | save state wizard | 保存状态向导 |
restore state | 恢复状态 | Remember setting | 记住设置 |
restore defaults | 恢复默认 | Intruder | 入侵者 |
Start attack | 开始攻击(爆破) | Actively scan defined insertion points | 定义主动扫描插入点 |
Repeater | 中继器 | New tab behavior | 新标签的行为 |
Automatic payload positions | 自动负载位置 | config predefined payload lists | 配置预定义的有效载荷清单 |
Update content-length | 更新内容长度 | unpack gzip/deflate | 解压gzip/放弃 |
Follow redirections | 跟随重定向 | process cookies in redirections | 在重定向过程中的cookies |
View | 视图 | Action | 行为 |
功能项
|
|||
Target | 目标 | Proxy | 代理 |
Spider | 蜘蛛 | Scanner | 扫描 |
Intruder | 入侵者 | Repeater | 中继器 |
Sequencer | 定序器 | Decoder | 解码器 |
Comparer | 比较器 | Extender | 扩展 |
Options | 设置 | Detach | 分离 |
Filter | 过滤器 | SiteMap | 网站地图 |
Scope | 范围 | Filter by request type | 通过请求过滤 |
Intercept | 拦截 | response Modification | 响应修改 |
match and replace | 匹配和替换 | ssl pass through | SSL通过 |
Miscellaneous | 杂项 | spider status | 蜘蛛状态 |
crawler settings | 履带式设置 | passive spidering | 被动蜘蛛 |
form submission | 表单提交 | application login | 应用程序登录 |
spider engine | 蜘蛛引擎 | scan queue | 扫描队列 |
live scanning | 现场扫描 | live active scanning | 现场主动扫描 |
live passive scanning | 现场被动扫描 | attack insertion points | 攻击插入点 |
active scanning optimization | 主动扫描优化 | active scanning areas | 主动扫描区域 |
passive scanning areas | 被动扫描区域 | Payload | 有效载荷 |
payload processing | 有效载荷处理 | select live capture request | 选择现场捕获请求 |
token location within response | 内响应令牌的位置 | live capture options | 实时捕捉选项 |
Manual load | 手动加载 | Analyze now | 现在分析 |
Platform authentication | 平台认证 | Upstream proxy servers | 上游代理服务器 |
Grep Extrack | 提取 |
工具>>Internet选项>>连接>>局域网>>勾选代理服务器填写地址127.0.0.1端口8080这里端口可以随便定义但是要跟burp的监听端口要一致然后保存再到Proxy的Options中添加add
1.以管理员权限运行ie浏览器 2.像http那样配置好代理 3.在地址栏访问https地址,单击继续 4.点击错误证书在这个地址栏 5.点击查看证书 6.在证书路径选项卡点击PortSwigger CA,然后再点击查看证书 7.在常规选项卡里点击安装证书 8.在证书导入向导中,选择“将所有的证书放入下列存储区” 9.点击浏览 10.以当前用户或者本机计算机都可以 11.点击ok完成导入 12.重启ie(不需要以管理员权限运行) 其它浏览器差不多具体请查看官网http://portswigger.net/burp/Help/proxy_options_installingCAcert.html
Bind to port---这是将被打开侦听传入连接的本地接口上的端口。你将需要使用一个没有被绑定被其他应用程序的闲置端口。 Bind to address---这是Burp绑定到本地接口的IP地址。您可以绑定到刚刚127.0.0.1接口或所有接口,或任何特定的本地IP地址。
你可以消除您的浏览器的SSL警报,并需要建立SSL例外。 凡网页加载来自其他域的SSL保护的项目,您可以确保这些均可由浏览器加载,而不需要先手动接受每个引用的域代理的SSL证书。 您可以与拒绝连接到服务器,如果接收到无效的SSL证书胖客户端应用程序的工作。下列选项可用:
显示隐藏的表单字段。 (有一个子选项,以突出强调取消隐藏栏在屏幕上,便于识别。 ) 启用已禁用的表单域 删除输入字段长度限制 删除的JavaScript表单验证下列选项可用于禁止客户端逻辑用于测试目的(注意,这些特征并非设计用来作为NoScript的的方式进行安全防御)有用:
删除所有的JavaScript。 删除<object>标记。下列选项可用于提供对受害用户的流量在不知不觉中被通过BurpSuite代理sslstrip般的攻击。您可以在与听者选项强制SSL的传出请求,以有效地从用户的连接剥离SSL一起使用这些:
转换HTTPS为HTTP的链接。 删除cookie安全标志。
所有这一切都通过代理服务器直接请求的资源。 已推断出通过分析响应代理请求的任何物品(前提是你没有禁用被动Spider) 。 内容使用Spider或内容发现功能查找。 由用户手动添加的任何项目,从其它工具的输出。已请求在SiteMap中的项目会显示为黑色。尚未被请求的项目显示为灰色。默认情况下(与被动蜘蛛(passviely scan this host)启用) ,当你开始浏览一个典型的应用,大量的内容将显示为灰色之前,你甚至得到尽可能要求,因为BurpSuite发现在您所请求的内容链接到它。您可以删除不 感兴趣的地址
1)使用在最左边的表列中的下拉菜单中突出显示单个项目。 2)可以突出显示使用上下文菜单中的“亮点”项目的一个或多个选定的项目。 两种方法添加注释: 3)双击相关条目,注释列中,添加或编辑就地评论。 4)发表评论使用上下文菜单中的“添加注释”项目的一个或多个选定的项目。除了以上两种,您也可以注释项目,它们出现在拦截选项卡,这些都将自动出现在历史记录表。 当您已经注明想要的请求,您可以使用列排序和显示过滤器后迅速找到这些项目。
1 使用 Burp Proxy 配置为你浏览器的代理服务器,浏览目标应用程序(为了节省时间,你可 以关闭代理拦截)。 2 到站点地图的”target”选项上,选中目标应用程序驻留的主机和目录。选择上下文菜单的” spider this host/branch”选项。
1.如果你没有证书,或者关注 Spidering 的敏感保护功能,Burp 可以忽略登陆表单。 2.Burp 能交互地为你提示引导,使你能够指定证书。这时默认设置项。 3.Burp 通过你配置的信息和自动填充规则,用处理其他表单的方式来处理登陆表单。 4.在遇到的每个登陆表单时,Burp 能自动地提交特定的证书。在最后一种情况下,任何时间 Burp 遇到一个包含密码域的表单,会提交你配置的密码到密码域,提交你配置用户名到最像用户名的字段域。如果你有应用程序的证书,想让 Spider为你处理登陆,通常情况下这是最好的选项
1)Number of threads----此选项控制并发请求进程数。 2)Number of retries on network failure----如果出现连接错误或其他网络问题,BurpSuite会放弃和移动之前重试的请求指定的次数。测试时间歇性网络故障是常见的,所以最好是在发生故障时重试该请求了好几次。 3)Pause before retry----当重试失败的请求,BurpSuite会等待指定的时间(以毫秒为单位)以下,然后重试失败。如果服务器被宕掉、繁忙或间歇性的问题发生,最好是等待很短的时间,然后重试。 4)Throttle between requests----BurpSuite可以在每次请求之前等待一个指定的延迟(以毫秒为单位)。此选项很有用,以避免超载应用程序,或者是更隐蔽。 5)Add random variations to throttle----此选项可以通过降低您的要求的时序模式进一步增加隐身。
1)Use HTTP version 1.1----如果选中,Spider会使用HTTP1.1版在其请求;否则,它会使用1.0版。 2)Use Referer header----如果选中,Spider会要求从另一个页面链接到任何项目时提交相关Referer头。此选项很有用更加紧密地模拟将通过您的浏览器发出的请求,并且还可能需要浏览一些应用程序验证Referer头。
1)自定义的漏洞,咨询内容包括: 问题类型及其整治的标准描述。 中适用于该问题,并影响其修复任何特定的功能的描述。 2)完整的请求和响应都是依据报告了该问题。在适用的情况,是相关的识别和再现问题的请求和响应的部分在请求和响应消息的编辑器中突出显示。通常情况下,测试并验证一个问题最快的方法是使用发送到Repeater。另外,对于GET请求,您可以复制此URL,并将其粘贴到浏览器中。然后,您可 以重新发出请求。 Burp扫描报告描述,每一个问题都会给出严重程度(高,中,低,资讯)和置信度(肯定的,坚定的,暂定)的评级。当一个问题一直使用一种技术,本质上是 不太可靠(如SQL盲注)确定,Burp会让你意识到这一点,通过丢弃的置信水平存在一定不足。这些额定值应始终被解释为指示性的,你应该根据你的应用程 序的功能和业务方面的知识进行审查。
1)索引号的项目,反映该项目的添加顺序。 2)目的地协议,主机和URL 。 3)该项目的当前状态,包括完成百分比。 4)项目扫描问题的数量(这是根据所附的最严重问题的重要性和彩色化) 。 5)在扫描项目的请求数量进行。 注意 这不是插入点的数量的线性函数 - 观察应用程序行为的反馈到后续攻击的请求,仅仅因为它会为一个测试仪。 6)网络错误的数目遇到的问题。 7)为项目创建的插入点的数量。这些信息可以让您轻松地监控个别扫描项目的进度。如果您发现某些扫描进度过于缓慢,可以理解的原因,如大量的插入点,缓慢的应用响应,网络错误等给定这些信息,你就可以采取行动来优化你的扫描,通过改变配置为插入点时,扫描引擎,或正在测试的主动扫描区域。
1)配置与目标的细节,你要主动扫描现场主动扫描设置。如果你已经配置了一套全范围的目标为你目前的工作,那么你可以简单地通知Burp主动扫描落在该范围内的每个请求。或者,您可以使用URL匹配规则定义自定义范围。 2)各地通过BurpProxy通常的方式应用浏览。这将有效地展示Burp要扫描的应用功能。对于每一个独特的所在范围的要求,你通过你的浏览器,Burp会排队主动扫描请求,并将努力走在后台找到漏洞为您服务。
1)配置具有您要被动地扫描目标的细节live passive scanning。默认情况下,Burp执行所有请求的被动扫描,但你可以限制扫描目标范围,或者使用URL匹配规则的自定义范围。 2)通过BurpProxy通常的方式应用浏览。这将有效地展示Burp你要扫描的应用功能。
URLparameter values - URL查询字符串中标准的参数值。 Body parameter values - 在邮件正文中,包括标准形式生成的参数参数值,属性的多重编码的参数,如上传的文件名, XML参数值和属性,和JSON值。 Cookieparameter values - 的HTTP Cookie的值。 Parameter name - 任意添加的参数的名称。 URL参数总是被添加,并且机身参数也加入到POST请求。测试一个附加的参数名称通常可以检测到被错过,如果只是参数值进行了测试异常的错误。 HTTPheaders - 在引用页和用户代理标头的值。测试这些插入点通常可以检测如SQL注入或跨站脚本持续在日志记录功能的问题。 AMF string parameters- 内AMF编码的邮件的任何字符串数据的值。 REST-style URL parameters - URL的文件路径部分中的所有目录和文件名令牌的值。测试每一个插入点可以并处显著开销,如果你相信应用程序使用这些位置传送参数数据,才应使用。
URL to body URL to cookie Body to URL Body to cookie Cookie to URL Cookie to body
1)Number of threads - 控制并发请求数。 2)Number of retries on network failure - 如果出现连接错误或其他网络问题,Burp会放弃和移动之前重试的请求指定的次数。测试时间歇性网络故障是常见的,所以最好是在发生故障时重试该请求了好几次。 3)Pause before retry - 当重试失败的请求,Burp会等待指定的时间(以毫秒为单位)以下,然后重试失败。如果服务器宕机,繁忙,或间歇性的问题发生,最好是等待很短的时间,然后重试。Throttle between requests - 在每次请求之前等待一个指定的延迟(以毫秒为单位)。此选项很有用,以避免超载应用程序,或者是更隐蔽。
SQL injection(SQL注入) - 这有子选项,以使不同的测试技术(误差为基础,延时测试,布尔条件测试) ,并且也使检查特定于单个数据库类型( MSSQL ,Oracle和MySQL的) 。 OS command injection(操作系统命令注入) - 这有子选项,以使不同的测试技术.。 Reflected XSS(反映了跨站点脚本) Stored XSS(存储的跨站点脚本) File path traversal(文件路径遍历) HTTP header injection(HTTP头注入) XML/SOAP injection(XML / SOAP注射) LDAP injection(LDAP注入) Open redirection(开放重定向) Header manipulation(头操纵) Server-level issues服务器级的问题所执行的每个检查增加的请求的数目,以及每个扫描的总时间。您可以打开或关闭个别检查根据您的应用程序的技术知识。例如,如果你知道某个应用程序不使用任 何LDAP ,您可以关闭LDAP注入测试。如果你知道哪个后端数据库的应用程序使用,你可以关闭SQL注入检测特定于其他类型的数据库。您也可以选择性地启用基于你 如何严格要求你的扫描是检查。例如,您可以配置BurpSuite做应用程序的快速一次过,只为XSS和SQL注入的网址和参数检查,每漏洞类型更全面的 测试在每一个插入点之前。
Headers--头 Forms--表格 Links--链接 Parameters--参数 Cookie MIME类型 Caching缓存 Information disclosure--信息披露 Frameable responses--耐燃反应(“点击劫持”) ASP.NET的ViewState 需要注意的是被动扫描不会派出自己的任何要求,和每个被动强加检查您的计算机上一个微不足道的处理负荷。不过,你可以禁用检查各个领域,如果你根本就不关心他们,不希望他们出现在扫描结果。
1)首先,确保Burp安装并运行,并且您已配置您的浏览器与Burp工作。 2)如果你还没有这样做的话,浏览周围的一些目标应用程序,来填充的应用程序的内容和功能的详细信息Burp的SiteMap。在这样做之前,要加快速度,进入代理服务器选项卡,然后截取子标签,并关闭代理拦截(如果按钮显示为“Intercept is On”,然后点击它来截取状态切换为关闭) 。 3)转到Proxy选项卡,并在History选项卡。发现一个有趣的前瞻性要求,您的目标应用程序,包含了一些参数。选择这个单一的请求,然后从上下文菜单中选择“Send to intruder” 。 4)转到Intruder标签。Burp Intruder可以让你同时配置多个攻击。您Send to Intruder的每个请求在自己的攻击选项卡中打开,而这些都是顺序编号的默认。您可以双击标签头重命名选项卡,拖动标签来重新排序,并且还关闭和打开新的标签页。 5)为您发送请求建立的Intruder选项卡,看看Target和Positions选项卡。这些已经自动填入您发送的请求的细节。 6)Burp Intruder本质工作,采取了基本模板的要求(你送到那里的那个) ,通过一些payloads的循环,将这些payloads送入定义的Positions,基本要求范围内,并发出每个结果的要求。位置标签用于配置,其中有效载荷将被插入到基本要求的位置。你可以看到,BurpSuite一直在你想用来放置有效载荷自动进行猜测。默认情况下,有效载荷放入所有的请求参数和cookie的值。每对有效载荷标记定义了一个有效载荷的位置,并且可以从基体的要求,这将被替换的有效载荷的内容,当该payload position用于括一些文本。有关进一步详情,请参阅Payload Markers的帮助。 7)旁边的请求编辑器中的按钮可以被用于添加和清除有效载荷的标志。试着增加payload position在新的地点请求中,并删除其他标志物,并看到效果了。当你理解了payload positions是如何工作的,请单击“Auto§ ”按钮恢复到BurpSuite为您配置的默认payload positions。如果你修改了请求本身的文本,可以重复步骤3创建与它的原始请求一个新的Intruder的攻击选项卡。
8)转到Payloads选项卡。这使您可以定义将要放入已定义的有效载荷仓的有效载荷。保持默认设置(使用有效载荷的“Simple list” ) ,并添加一些测试字符串到列表中。您可以通过输入到“Enter a new item”框中,单击“add”,输入自己的字符串。或者您可以使用“add from file”下拉菜单,然后选择“Fuzzing-quick”,从内置的负载串[专业版]列表中。 9)现在,您已经配置了最低限度的选项来发动攻击。转到Intruder菜单,然后选择“Start attack” 。 10)在包含在结果选项卡一个新的窗口中打开攻击。结果表包含已经取得,与各关键细节,如所使用的有效载荷, HTTP状态码,响应长度等,您可以在表中选择任何项目,以查看完整的请求和响应每个请求的条目。您还可以对表进行排序通过单击列标题,并使用过滤器栏过滤表中的内容。这些特征以相同的方式工作,作为Proxy history。 11)这次袭击窗口包含其他标签,显示被用于当前攻击的配置。您可以修改大部分这种配置的攻击已经开始。转到选项选项卡,向下滚动到“ grep-match” ,并勾选“标志的结果与项目相匹配的响应这些表达式” 。这将导致Intruder检查响应匹配列表中的每个表达式项目和标志的火柴。默认情况下,列表显示fuzzing时是很有用的一些常见的错误字符串,但可以配置,如果你想自己的字符串。返回result选项卡,看到Intruder增加了对每个项目列在列表中,而这些包含复选框,指示表达式是否被发现在每一个响应。如果你是幸运的,你的基本模糊测试可能引发一个错误的存在在一些回应的错误消息。 12)现在,在表中选择任何项目,并期待在该项目的响应。发现在反应(如网页标题,或错误消息)一个有趣的字符串。右键单击该项目在表中,然后从上下文菜单中选择“Define extrace grep from response” 。在对话框中,选择响应的有趣字符串,然后单击“确定” 。结果表中现在包含一个新的列,其提取这一段文字从每个响应(其可以是不同的在每一种情况下) 。您可以使用此功能来定位在大型攻击有趣的数据与成千上万的反应。请注意,您还可以配置“extrace grep ”项目中的选项选项卡,在此之前前或在攻击期间。 13)在结果表中选择任一项目,并打开上下文菜单。选择“Send to Repeater” ,然后转到Repeater选项卡。你会看到所选的请求已被复制到Repeater工具,进行进一步的测试。许多其他有用的选项是可用的上下文菜单中。有关发送BurpSuite工具之间的项目,使整体测试工作流程的详细信息。 14)您可以使用“Save”菜单在结果窗口中都救不结果表或整个攻击。你可以加载结果表到其他工具或电子表格程序。您可以通过在主Burp的UI Intruder菜单重新加载保存的攻击。 15)这些步骤只介绍一个简单的用例Intruder,对于Fuzzing的要求有一些标准的攻击字符串和用grep搜索中的错误消息。您可以使用Intruder许多不同类型的攻击,有许多不同的payloads和攻击选项。
asp password=execute("response.clear:response.write(""passwordright""):response.end") php password=execute("response.clear:response.write(""elseHelloWorld""):response.end") aspx password=execute("response.clear:response.write(""elseHelloWorld""):response.end")。一般步骤如下
1)每对标记指定一个有效载荷的位置。 2)一对标记物可以从它们之间任选的模板要求附上一些文字。 3)当一个有效载荷的位置被分配了一个有效载荷,无论是标记和任何包含的文本将被替换为有效载荷。 4)当一个有效载荷的位置不具有分配的有效载荷,该标记将被删除,但是所包含的文本保持不变。为了使配置更加简单,Intruder会自动突出显示每对有效载荷的标记和任何它们之间包含的文本。
1)URL查询字符串参数 2)车身参数 3)曲奇饼 4)多重参数属性(例如,在文件上传的文件名) 5)XML数据和元素属性 6)JSON参数您可以配置自动负载位置是否将更换或追加到现有的参数值,通过入侵者菜单上的选项。需要注意的是,如果一个子部分的要求,但不是整个消息体,包含格式化数 据使用XML或JSON ,可以自动通过这种结构中的位置的有效载荷手动选择格式化数据的准确块,并使用“自动”按钮在其定位的有效载荷。这是有用的,例如,当一个多参数的值包含 在XML或JSON格式数据。
刷新 - 这将刷新请求模板编辑器的语法彩色化,如果必要的。 清除 - 这会删除整个请求模板。注意:您也可以使用入侵者的有效载荷仓的UI通过BurpSuite扫描仪配置自定义插入点主动扫描。要做到这一点,配置请求模板和有效载荷在标记内入侵者通常的方式,然后选择从入侵者菜单中的“主动扫描定义插入点” 。
Simple list--简单字典 Runtime file--运行文件 Custom iterator--自定义迭代器 Character substitution--字符替换此负载类型允许您配置一个字符串列表,并应用各种字符替换到每个项目。这可能是在密码猜测攻击非常有用,用来产生在字典中的单词常见的变化。 用户界面允许您配置了一些字符替换。当执行攻击,有效载荷类型工程通过逐一配置的列表项。对于每个项目,它产生一个数的有效载荷,根据所定义的取代基包括 取代的字符的所有排列。例如,默认替换规则(其中包括e>3且t>7),该项目“peter”将产生以下的有效载荷:
peter p3ter pe7er p37er pet3r p3t3r pe73r p373rCase modification--此负载类型允许您配置一个字符串列表,并应用各种情况下修改每个项目。这可能是密码猜测攻击非常有用,用来产生在字典中的单词的情况下的变化。 可以选择以下的情况下修改规则:
No change - 这个项目可以用不被修改。 To lower case- 在该项目的所有字母转换为小写。 To upper case - 在该项目的所有字母转换为大写。 To Propername - 在该项目的第一个字母转换为大写,以及随后的字母转换为小写。 To ProperName - 在该项目的第一个字母转换为大写,以及随后的字母都不会改变。例如:
Peter Wiener peter wiener PETER WIENER Peter wiener选项:
Recursive grep--递归grep Illegal Unicode--非法的Unicode Character blocks--字符块 Numbers--数字 Dates--日期 Brute forcer--暴力 Null payloads--空的有效负载 Character frobber--性格frobber Bit flipper--位翻转 Username generator--用户名生成器 ECB block shuffler--欧洲央行座洗牌 Extension-generated--扩展生成 Copy other payload--复制其它有效负载
Add prefix - 添加一个文字前缀 Add suffix - 添加一个文字后缀 Match/replace - 将替换匹配特定正则表达式的有效载荷的任何部位,用一个文字字符串表示。 Substring - 提取的有效载荷的子部分中,从指定的偏移量(0-索引)和至所指定的长度开始。 Reverse substring - 对于子规则来说,最终的偏移量指定的有效载荷的末尾向后计数,并且长度从端部向后偏移计数。 Modify case - 这个修改了的有效载荷的情况下,如果适用的话。同样的选项作为的情况下修改有效载荷类型。 Encode - URL,HTML,Base64的,ASCII码或十六进制字符串构建各种平台:采用不同的计划,该编码的有效载荷。 Hash - hash Add raw payload - 这之前或之后,在当前处理的值增加了原始负载值。它可以是有用的,例如,如果你需要提交相同的有效载荷在raw和哈希表。 Skip raw payload - 将检查是否当前处理的值匹配指定的正则表达式,如果是这样,跳过有效载荷和移动到下一个。这可能是有用的,例如,如果知道一个参数值必须有一个最小长度和要跳过的一个列表,比这更短的长度的任何值。 Invoke Burp extension - 调用一个Burp exxtension(扩展)来处理负载。扩展名必须已注册入侵者有效载荷处理器。您可以从已注册的当前加载的扩展可用的处理器列表中选择所需的处理器。是规则的以下类型:
Number of threads(执行进程数) - [专业版]该选项控制并发请求数的攻击。 Number of retries on network failure(网络故障的重试次数) - 如果出现连接错误或其他网络问题,Burp会放弃和移动之前重试的请求指定的次数。测试时间歇性网络故障是常见的,所以最好是在发生故障时重试该请求了好几次。 Pause before retry(重试前暂停) - 当重试失败的请求,Burp会等待指定的时间(以毫秒为单位) ,然后重试失败以下。如果服务器被宕机,繁忙,或间歇性的问题发生,最好是等待很短的时间,然后重试。 Throttle between requests(请求之间的节流) - Burp可以在每次请求之前等待一个指定的延迟(以毫秒为单位) 。此选项很有用,以避免超载应用程序,或者是更隐蔽。或者,您可以配置一个可变延迟(与给定的初始值和增量) 。这个选项可以是有用的测试应用程序执行的会话超时时间间隔。 Start time(开始时间) - 此选项允许您配置攻击立即启动,或在指定的延迟后,或开始处于暂停状态。如果攻击被配置,将在未来的某个时刻以供将来使用被执行,或保存这些替代品可能是有用的。小心使用这些选项可让您微调攻击引擎,这取决于对应用程序性能的影响,并在自己的处理能力和带宽。如果您发现该攻击运行缓慢,但应用程序表现良好和你自己 的CPU利用率很低,可以增加线程数,使你的攻击进行得更快。如果您发现连接错误发生,该应用程序正在放缓,或者说自己的电脑被锁定了,你应该减少线程 数,也许增加网络故障和重试之间的间隔重试的次数。
Store requests/responses(存储请求/响应) - 这些选项确定攻击是否会保存单个请求和响应的内容。保存请求和响应占用磁盘空间,在你的临时目录中,但可以让您在攻击期间在众目睽睽这些,如果有必要重复单个请求,并将其发送到其他Burp工具。 Make unmodified baseline request(未修改的基本请求) - 如果选择此选项,那么除了配置的攻击请求,Burp会发出模板请求设置为基值,所有有效载荷的位置。此请求将在结果表显示为项目# 0 。使用此选项很有用,提供一个用来比较的攻击响应基地的响应。 Use denial-of-service mode(使用拒绝服务的模式) - 如果选择此选项,那么攻击会发出请求,如正常,但不会等待处理从服务器收到任何答复。只要发出的每个请求, TCP连接将被关闭。这个功能可以被用来执行拒绝服务的应用层对脆弱的应用程序的攻击,通过重复发送该启动高负荷任务的服务器上,同时避免通过举办开放套接字等待服务器响应锁定了本地资源的请求。 Store full payloads(保存完整的有效载荷) - 如果选择此选项,Burp将存储全部有效载荷值的结果。此选项会占用额外的内存,但如果你想在运行时执行某些操作,如修改payload grep setting(有效负载值设置),或重新发出请求与修改请求模板可能需要。
Match(匹配类型) - 指定的表达式是否是简单的字符串或regular expressions(正则表达式)。 Case sensitive match(区分大小写的匹配) - 指定检查表达式是否应区分大小写。 Exclude HTTP headers(不包括HTTP头) - 指定的HTTP响应头是否应被排除在检查。
Case sensitive match(区分大小写的匹配) - 指定检查payload(负载)是否应区分大小写。 Exclude HTTP headers(不包括HTTP头) - 这指定的HTTP响应头是否应被排除在检查。 Match against pre-URL-encoded payloads(对预URL编码的有效载荷匹配) - 这是正常的配置Inturder(入侵者)请求中URL编码的有效载荷。然而,这些通常是由应用程序解码,回荡在他们的原始形式。您可以使用此选项,以用于有效载荷Burp检查反应在他们的预编码形式。
1)Never(从来没有) - 入侵者不会遵循任何重定向。 2)On-site only(现场唯一的) - 入侵者只会跟随重定向到同一个网页“网站” ,即使用相同的主机,端口和协议的是在原始请求使用的URL 。 3)In-scope only(调查范围内的唯一) - Intruder只会跟随重定向到该套件范围的目标范围之内的URL 。 4)Always(总是) - Intruder将遵循重定向到任何任何URL 。您应使用此选项时应谨慎 - 偶尔, Web应用程序在中继重定向到第三方的请求参数,并按照重定向你可能会不小心攻击。Process cookies in redirections(过程中的Cookie重定向) - 如果选择此选项,然后在重定向响应设置任何cookies将被当重定向目标之后重新提交。例如,如果你正在尝试暴力破解登录的挑战就可能是必要的,它总是 返回一个重定向到一个页面显示登录的结果,和一个新的会话响应每个登录尝试创建。
1)您可以配置Target(目标),Positions(位置),Payloads(有效载荷)和Options(选项卡)的攻击设置,然后选择从Intruder(入侵者)菜单“Start attack(开始攻击)”。 2)您可以通过从Intruder menu(入侵者菜单)中选择“previously saved attack(打开保存的攻击)”打开以前保存的攻击。在单独的窗口中每次攻击会打开。该窗口显示攻击为它们生成的结果,使您能够修改攻击配置实时,并与您的测试工作流程链接,或进行其他操作。
Search term(检索词) - [专业版]您可以筛选反应是否不包含指定的搜索词。您可以设定搜索词是否是一个文字字符串或正则表达式,以及是否区分大小写。如果您选择了“negative search(消极搜索)”选项,然后不匹配的搜索词唯一的项目将被显示。 Status code(状态代码) - 您可以配置是否要显示或隐藏各种HTTP状态码响应。 Annotation(注释) - 您可以设定是否显示使用用户提供的评论或只重点项目。在结果表中显示的内容实际上是一个视图到基础数据库,并显示过滤器控制什么是包含在该视图。如果设置一个过滤器,隐藏一些项目,这些都没有被删除,只是隐藏起来,如果你取消设置相关的过滤器将再次出现。这意味着您可以使用筛选器来帮助您系统地研究一个大的结果集(例如,从模糊测试包含许多参数的要求)来理解各种不同的有趣的响应出现。
attack - 这是用来保存当前攻击的副本,包括结果。保存的文件可以使用从主Burp的UI Intruder菜单中的“打开保存的攻击”选项来重新加载。 Results table - 这是用于对结果表保存为一个文本文件。你可以选择保存的所有行,或仅选定的行。您也可以选择要包括的列,列分隔符。此功能是有用的导出结果到电子表格中,以便进一步分析,或用于保存单个列(如使用提取的grep函数挖掘数据),以用作用于随后的攻击或其它工具的输入文件。 Server responses - 这是用于保存收到的所有请求的全部应答。这些既可以被保存在单独的文件中(顺序编号)或串行级联的序列转换成一个单一的文件。 Attack configuration - 这是用来保存当前正在执行攻击的配置(而不是结果)。您可以重新使用从主Burp的UI Intruder菜单中的“加载配置攻击”选项,攻击配置。
Burp Repeater(中继器)是用于手动操作和补发个别HTTP请求,并分析应用程序的响应一个简单的工具。您可以发送一个内部请求从Burp任何地方到Repeater(中继器),修改请求并且发送它。
您可以使用中继器用于各种目的,如改变参数值来测试输入为基础的漏洞,发出以特定的顺序要求,以测试逻辑缺陷,并可以多次重发从Burp Scanning results(扫描结果)的要求手动验证报告的问题。
For example:
1)可以从Proxy history、site map、Scanner result里地项目地址详情发送到repeater,可以对页面数据进行修改。 2)点击go,发送请求,右边响应请求。 3)可以通过“<“和”>“来返回上一次和下一个操作。 4)单击”x“可以删除当前测试请求页面,.....表示打开新的标签页 5)底部的功能用于搜索条件,可以用正则表达式,底部右边显示匹配结果数
主中继器的用户界面可让您在多个不同的请求同时工作,每一个在它自己的标签。当你发送请求到中继器,每一件都是在自己的编号标签打开。
每个选项卡都包含以下项目:
控制发出请求,然后浏览请求的历史。目标服务器的请求将被发送显示 - 你可以点击目标细节来改变这些。
HTTP消息中包含的编辑器将发出的请求。您可以编辑该请求,并一遍又一遍地重新发布它。
HTTP消息编辑器,显示从上次发出的请求接收到的响应。
开始与中继器工作的最简单的方法是选择要在另一个burp工具(如Proxy history或site map)工作的要求,并在上下文菜单中使用“Send to Repeater(发送到转发器)”选项。这将在中继器创建一个新的请求选项卡,并自动填充目标细节和请求消息的编辑器相关的细节。然后,您可以修改并发 出所需的要求。当你的要求准备好发送,点击“go(转到)”按钮,将其发送到服务器。当这个被接收时,与响应长度和一个计时器(以毫秒为单位)一起被显示 的响应。您可以使用通常的HTTP消息的编辑功能,以帮助分析请求和响应消息,并开展进一步的行动。
每个中继器选项卡维护其自身已在它的请求的历史。您可以点击“ <”和“ > ”按钮来向前和向后导航这段历史,并查看每个请求和响应。您也可以使用下拉按钮以显示历史相邻项的编号列表,并迅速转移给他们。在历史上的任何时候,你可 以编辑和重新发布当前显示的请求。
Burp Repeater具有控制其行为的各种选项,包括自动更新的Content- Length头的,拆包的压缩内容,和重定向的下面。你可以通过Repeater(中继器)菜单访问这些选项。
您可以轻松地管理Repeater的request(请求)选项卡。您可以:
通过双击该选项卡头重命名标签。
通过拖动重新排列标签。
通过单击最右侧的“...”选项卡上打开一个新的标签。
关闭选项卡单击该选项卡标题中的X按钮。
直放站菜单控制的burpRepeater的行为方面。下列选项可用:
该选项控制Burp是否自动更新的要求在必要的Content-Length头。使用这个选项通常是必不可少的,当请求消息中包含一个身体。
该选项控制Burp是否自动解压缩在收到的答复的gzip和deflate压缩内容。
此设置控制是否重定向响应会被自动执行。下列选项可用:
1)Never - 中继器将不会跟随任何重定向。 2)On-site only - 中继器将只跟随重定向到同一个网页“site”,即使用相同的主机,端口和协议的是在原始请求使用的URL。 3)In-scope Only - 中继器将只跟随重定向到该套件范围的目标范围之内的URL。 4)Always - 中继器将跟随重定向到任何URL任何责任。您应使用此选项时应谨慎 - 偶尔,Web应用程序在中继重定向到第三方的请求参数,并按照重定向你可能会不小心攻击你不想要的。
如果选择此选项,然后在重定向响应设置任何cookies将被当重定向目标之后重新提交。
此子菜单允许您配置了请求/响应面板的布局。您可以在顶部/底部,左/右拉开,或在选项卡中查看HTTP消息。
此子菜单包含相同的选项,可在通过请求和响应消息编辑器的上下文菜单。
Burp Sequencer是一种用于分析数据项的一个样本中的随机性质量的工具。你可以用它来测试应用程序的session tokens(会话tokens)或其他重要数据项的本意是不可预测的,比如反弹CSRFtokens,密码重置tokens等。
Burp Sequencer是一种用于分析在应用程序的会话tokens,并且意图是不可预测的其他重要数据项的随机性质量的工具。
使用Sequencer可能会导致在某些应用中意想不到的效果。直到你完全熟悉它的功能和设置,你应该只使用Burp Sequencer对非生产系统。
要开始去了解Burp Sequencer,执行以下步骤:
1)首先,确保Burp已安装并运行,您已配置您的浏览器Burp的工作,并且您已经浏览你的目标应用程序来填充你的代理服务器的历史。 2)发现发出会话tokens或其他类似的项目,无论是在Set-Cookie头,在一个表单域,或其他地方的代理史上的一个回应。使用上下文菜单中发送的内容到Sequencer。 3)转到Sequencer选项卡,然后再选择“live capture(现场捕获请求)”,选择你刚才发送的项目。
4)在“Token Location Within Response(tokens位置在回应)”部分,选择在tokens出现的响应的位置。如果标记出现在自定义位置(即不是在一个Set-Cookie头或表单域) ,然后选择“Custon location(自定义位置)”选项,然后在对话框中,选择响应tokens,然后单击“确定” 。
5)在“Select live Captrue Request(选择现场捕获请求)”部分中,单击“Start live capture(开始实时捕获)”按钮。这将导致Burp反复发出原始请求,并extract(提取)所有在响应收到的tokens。实时捕获会话打开一个新窗口,显示捕获的进度,并已获得的tokens数量。当几百tokens已获得,暂停实时捕获会话,然后单击“Analyze now(立即分析)”按钮。 6)当分析完成后,会显示出随机性测试的结果。这表明样品中整体摘要,并附有详细的结果为每种类型进行了测试。有简短的文档,结果自己在每个测试。在某些情况下,你可能已经获得tokens的一个合适的样本。您可以手动加载此样品为Sequnecer,并执行相同的分析。要做到这一点,在主burp的UI ,转到序选项卡,然后手动加载子选项卡。您可以从剪贴板粘贴标记,或从文件中加载它们,并使用“Analyze now(立即分析)”按钮,开始装载样品的分析。
Burp Sequencer采用标准统计测试的随机性。这些都是基于对测试的证据试样的假设,并计算发生的观测数据的概率,假设该假说是真实的原则:
字符级测试在其原始形式tokens的每个字符位置进行操作。首先,字符设置在每个位置的大小进行计数- 这是出现在每个位置上的取样数据中的不同的字符的数目。然后,下面的测试是使用此信息来进行:
Character count analysis - 此测试可分析tokens内使用在各位置中的字符分配。如果样品是随机生成的,所用的字符的分布可能是近似均匀的。在每个位置上,该测试计算,如果tokens是随机产生所观察到的分布的概率。
Character transition analysis - 此测试可分析样品中的连续符号之间的转换。如果样品是随机生成的,一个字符出现在一个给定的位置,同样可能被随后的下一个标记由一个用于在该位置上的字符中的任何一个。在每个位置上,该测试计算,如果tokens是随机产生的观察到的转换的概率。
基于上述试验,character-level analysis(字符级分析)计算整体分数,每个字符位置 - 这是在每个位置由每个字符级测试的计算的最低概率。分析然后计数的有效熵各种显着性水平的位的数目。根据它的字符集的大小,每个位置被分配一个号码的比特 (如果有4个字符,3位,如果有8个字符等2位),并且比特的总数等于或高于每显着性水平进行计算。
Bit-level test(位级测试)是比字符级测试功能更强大。启用位级的分析,每个tokens被转换成一组比特,与由字符集的每个字符位置的大小来确定的比特的总 数。如果任何职位聘用,其大小不是2的圆形电源的字符集,在该位置的样本数据被转换成其大小是两个最接近的较小的圆形电源的字符集。在该位置的数据的部分 比特被有效地合并成从该位置所产生的全部位。这个翻译是在被设计为保留原始样本的随机性特点,不会引入或移除任何偏见的方式进行。然而,这种类型的没有进 程可以是完美的,它很可能与分析非圆字符集大小的样本将介绍一些不准确到分析结果的过程。当每个tokens已被转换成一个比特序列,下面的测试是在每个 位的位置进行:
FIPS monobit test - 此测试分析的1和0的每个位的位置分布。如果样品是随机产生的,1和0中的数量很可能是近似相等的。在每个位置上测试计算,如果tokens是随机产生所 观察到的分布的概率。对于每一个进行的,除了报告中出现的观测数据的概率FIPS测试,Burp Sequncer也记录是否每一位通过或失败的FIPS测试。请注意,通过FIPS标准重新调整Burp Sequencer内任意样本量的工作,而正式规范的FIPS测试假定恰好20,000tokens的样本。因此,如果你希望得到的结果是严格符合 FIPS规范,你应该确保你使用的20,000tokens的样本。
FIPS poker test -
该测试将所述位序列中的每一个位置转换成的四个连续的,非重叠的组,并导出一个4位的数量从每个组。然后计算每个出现16个可能的数字的数,并进行卡方计
算来评估这样的分布。如果样品是随机生成的,四比特数的分布可能是近似均匀的。在每个位置上,该测试计算,如果tokens是随机产生所观察到的分布的概
率。
FIPS runs tests -
该测试将所述位序列中的每一个位置转换成连续的位具有相同值的运行。然后计算试验次数为1,2,3,4,5,和6及以上的长度。如果样品是随机生成的,运
行与每个这些长度的数量很可能是由样本集的大小所确定的范围之内。在每个位置上,该测试计算发生,如果tokens是随机观察到的运行的概率。
FIPS long runs test - 这个测试测量位在每个位的位置值相同的最长运行。如果样品是随机生成的,最长的运行很可能是由样本集的大小所确定的范围之内。在每个位置上,该测试计算, 如果tokens是随机产生所观察到的最长的概率。需要注意的是符合FIPS规范这个测试仅记录失败,如果位的最长过于漫长。然而,位过于短最长也表明, 样品是不是随机的。因此,某些位可能录得显着性水平是低于FIPS传递,即使他们没有严格失败的FIPS检验水平。
Spectral tests - 该测试执行在每个位置上的比特序列的复杂的分析,并能够识别非随机性的证据表明,通过其他的统计测试的一些样品中。测试工程通过比特序列以及将每个系列的 连续的数字作为一个多维空间的坐标。它绘出的点在此空间由这些坐标来确定每个位置。如果样品是随机生成的,点此空间内的分布可能是大致均匀;在该空间内联 网的外观表示该数据很可能是不随机的。在每个位置,测试,计算所观察到的分布存在的,如果tokens是随机的概率。该试验重复进行多种尺寸的数目 (1~8位)和用于多个号码的尺寸(2至6)。
Correlation test - 其他各个位级测试工作在采样tokens中的各个位的位置,所以随机性的每个位的位置量计算隔离。仅执行这种类型的测试将防止随机性的tokens作为一 个整体金额的任何有意义的评估:包含在每个位置相同的位值标记的样本可能会出现含有比含有不同的值更短的标记的样品更多的熵在每个位置上。因此,有必要以 测试在tokens内的不同的位位置中的值之间的任何统计学显著关系。如果样品是随机生成的,在给定的比特位置处的值是同样可能伴随着一个或一个零在任何 其它位的位置。在每个位置上,这个测试与计算在出现的其他位置位观察,如果tokens是随机的关系的可能性。为了防止任意的结果,当两个比特之间观察到 一定程度的相关性,该测试调整,其显着性水平下是基于所有其他位级测试的位的显着性水平。
Compressoion test - 其他各个位级测试工作在采样tokens中的各个位的位置,所以随机性的每个位的位置量计算隔离。仅执行这种类型的测试将防止随机性的tokens作为一 个整体金额的任何有意义的评估:包含在每个位置相同的位值标记的样本可能会出现含有比含有不同的值更短的标记的样品更多的熵在每个位置上。因此,有必要以 测试在tokens内的不同的位位置中的值之间的任何统计学显著关系。如果样品是随机生成的,在给定的比特位置处的值是同样可能伴随着一个或一个零在任何 其它位的位置。在每个位置上,这个测试与计算在出现的其他位置位观察,如果tokens是随机的关系的可能性。为了防止任意的结果,当两个比特之间观察到 一定程度的相关性,该测试调整,其显着性水平下是基于所有其他位级测试的位的显着性水平。
在一个应用程序的令牌进行随机试验中,首先有必要获得这些令牌的合适的样品。这可以通过两种方式来完成:通过直接从目标进行标记的自动live capture(实时捕捉),或通过Manually loading(手动加载)令牌,你已经取得的样本。
要进行live capture(实时捕捉),你需要找到一个返回响应的地方,你要分析的session token(会话令牌)或其他项目的目标应用程序中的请求。您可以选择在任何地方Burp的请求,然后从上下文菜单中选择“Send to sequencer(发送到音序器)”选项做到这一点。需要对这个请求来配置实况采集的步骤如下所述。
下列选项可用:
cookie - 如果响应设置的任何cookie,这个选项可以让你选择一个cookie来分析。这是通过会话令牌给客户的最常用方法。 Form field - 如果响应包含任何HTML表单字段,这个选项可以让你选择一个表单字段的值来分析。这种方法通常用于发送反CSRF令牌和其它每页令牌提供给客户。 Custom location - 您可以使用此选项来包含要分析的数据的响应中指定一个特定的自定义位置。这是通过使用响应提取规则对话框。
这些设置控制用于执行实时捕捉时发出HTTP请求和收获令牌发动机。下列选项可用:
number of threads(执行绪数目) - 此选项控制并发请求数的实时捕捉,却可以使。 Throttle between requests(请求之间的节流)- 可选的,实时捕捉每一个可以请求之前等待一个指定的延迟(以毫秒为单位)。此选项很有用,以避免超载应用程序,或者是更隐蔽。 Ignore token whose length deviates by x characters忽略令牌,其长度偏差的X字符- 您可以选择配置的实时捕捉忽略的令牌,其长度与平均长度令牌偏离给定的阈值。这可能是有用的,如果应用程序偶尔会返回一个包含在令牌通常出现的位置不同项目的异常反应。
当你已经完全配置的live Capture(实时捕捉),点击“开始实时捕获”按钮开始实时捕捉。burp序会反复发出您的请求,并从应用程序的响应提取相关的令牌。在实时捕捉,一个进度条显示,有令牌,请求和网络错误次数的计数器。下列选项可用:
Pause/resume(暂停/恢复) - 这将暂时停顿,然后继续,捕捉。 Stop(停止) - 这会永久停止捕获。副本令牌 - 这会将当前拍摄的令牌到剪贴板,以便在其他burp攻击(如入侵者有效载荷)或工具的使用。 Save tokens(保存tokens) - 这节省了当前拍摄的令牌文件。 Auto-analyze(自动分析) - 如果启用此选项,burp就会自动进行标记分析,并定期更新结果现场采集过程中。 Analyze now(现在分析) - 这是时可用最少100令牌已被抓获,并导致burp,分析当前采样和更新的结果。
此功能允许你加载Sequencer与您已获得令牌的样本,然后进行统计分析的样本。
要执行手动负载,您首先需要通过一些手段,比如你自己的脚本或从较早的live captrue实时捕捉,输出,或Intruder attack,以获得自己的目标应用程序令牌的样本。令牌需要在一个简单的换行符分隔的文本格式。
使用粘贴按钮,从剪贴板粘贴,或Load按钮的标记,从文件中加载它们。加载令牌,再加上最短和最长长度的详细情况,将显示您感,检查样品已正确装入。
要执行加载令牌的分析,请单击“analyze now(立即分析)”按钮。
在“analysis options(分析选项)”选项卡允许您配置如何Token Handled,并在分析过程中都进行哪些类型的测试。
令牌过程中如何分析处理这些设置控制。下列选项可用:
Pad short tokens at start/end(垫短令牌在开始/结束) - 如果由应用程序产生的标记具有可变长度,这将需要被填充,以使将要进行的统计检验。您可以选择是否填充应在开始或每个标记的结尾被应用。在大多数情况下,填充令牌在开始是最合适的。 Pad with(垫) - 您可以指定将用于填充字符。在大多数情况下,对于数字或ASCII十六进制编码的令牌,填充与“0”字符是最合适的。 Base64-decode before analyzing(base64解码分析之前) - 如果令牌是Base64编码,可以配置Burp分析,这将普遍提高在编码分析之前的准确度。
这些选项控制所执行分析的类型。您可以单独启用或禁用每种类型的字符级和位级测试。有时候,启用所有测试进行了初步分析后,您可能需要禁用某些测试,以反映您更好的了解所标记的特点,或以隔离受您的样品表现任何不寻常的特性的影响。
在结果窗口中,修改任何的分析选项后,您可以点击“重做分析”按钮,您的新设置重新进行了分析,并更新结果。
summary选项卡是看获得有关随机性样品中的程度的总体结论首位。它包括一个图表,显示的有效熵以上各显着性水平的位的数目。这提供了一个直观的判决用来传递随机性测试不同的可能显着性水平的位的数目。
该标签还报告了结果的可靠性的估计值,是根据样本的数量。
人物层次的分析选项卡显示所有字符级测试结果摘要,并让您深入到每个字符级测试的细节。它也包含图表显示的字符集在每个位置的大小,并且熵的比特可以从每个字符位置来提供的最大数量。
注意,字符级测试是不可靠的,如果所采用的字符集的大小过大相对于样本的数目。例如,如果一个令牌采用了64个不同的字符在每个位置,你只捕获 100个样品,还有隔靴搔痒的样本数据得出关于角色分配的任何可靠的结论。出于这个原因,当存在的不可靠的结果的危险,burp序将自动禁止字符级测试, 以防止破坏整体合并结果从分析的字符级的结果。
该位层次的分析选项卡中显示了所有位级的测试结果摘要,并让您深入到每一个位级测试的细节。这可以让你获得样品的性能有更深的了解,找出任何异常的原因,并评估令牌预测的可能性。
还有一个图表,显示位贡献的令牌中的每一个字符的位置的数目。这将使你的令牌中交叉引用各个位回到原来的字符位置,如果你需要。
分析选项卡显示已配置的分析的选项。如果需要重新进行分析,您可以修改这些。
Burp Decoder是一种用于将编码数据纳入其规范形式,或将原始数据转换成各种编码和哈希表的简单工具。它能够智能地识别多种编码格式采用启发式技术。
您可以将数据加载到解码器在两个方面:
键入或直接粘贴到顶部编辑器面板。
选择数据中burp的任何位置,然后从上下文菜单中选择“发送到解码器”。
您可以使用“文本”和“十六进制”按钮来切换编辑器的类型来对数据使用。
转换不同的变换可以应用到的数据的不同部分。下面的解码和编码操作可用:
1)Url 2)HTMLBase64 3)十六进制 4)ASCII码 5)八进制 6)二进制 7)GZIP等
各种常用的散列函数是可用的,取决于你的Java平台的功能。
要进行手动解码和编码,使用下拉列表选择所需的变革。所选择的转型将被应用到选定数据,或整个数据如果没有被选中。
在解码器内的任何面板,您可以点击“智能解码”按钮。然后Burp将试图通过寻找出现在可识别的格式,例如URL编码或HTML编码要编码的数据来 智能地解码该面板的内容。递归执行这个动作,一直持续到没有进一步的识别的数据格式检测。这个选项可以是一个有用的第一步,当你已经确定了一些不透明的数 据,并想快速浏览一下,看看是否可以很容易地解码成更容易识别的形式。应用到数据的每个部分的解码是使用通常的着色表示。因为Burp解码器,使一个“最 佳猜测”尝试识别一些常见的编码格式,它有时会犯错误。发生这种情况时,你可以很容易地看到所有参与解码的阶段,及已被应用在每个位置上的转变。使用手动 控制则可以手动修复任何不正确的转换和手动或巧妙继续解码从这点。
Burp的Comparer是执行任何两项数据之间的比较(视觉“diff(差异)”)一个简单的工具。对Burp的Comparer一些常见用途如下:
当寻找的用户名枚举的条件下,您可以使用有效和无效的用户名比较响应登录失败,寻找在反应细微的差别。
当Intruder袭击已导致不同长度的比基反应一些非常大的反应,你可以比较这些很快看到那里的分歧所在。
当comparing的site maps或通过不同类型的用户生成的Proxy history条目,你可以比较对类似的要求,看看那里的不同之处在于,为不同的应用程序行为引起的。
当测试使用布尔条件注射和其他类似的测试盲目SQL注入漏洞,你可以比较两个反应,看是否注射不同的条件已导致响应的相关差异。
您可以将数据加载到comparer对以下方式:
它直接粘贴形成剪贴板。 从文件中加载它。 选择数据中burp的任何位置,然后从上下文菜单中选择“发送到的Comparer”。
加载数据的每个项目显示为两个相同的列表。要进行比较,从每个列表中选择其他项目,并单击其中的“comparsions”按钮之一:
Word compare(字比较) - 这种比较tokenizes根据空格分隔每个数据项,并确定了改造的第一个项目进入第二所需的标记级别的编辑。当在单词层面存在被比较项之间的有趣的差异,例如,在含有不同含量的HTML文档,是最有用的。
Byte compare(字节比较) - 这种比较确定改造的第一个项目进入第二所需的字节级的编辑。当在字节水平存在比较项之间的有趣的差别,比如在包含在一个特定的参数或cookie值稍有不 同值的HTTP请求,这是最有用的。注意:该字节级的比较是相当多的计算密集的,并且当一个字级别的比较失败,以确定在一个信息道的相关的差异通常应该只 使用这个选项。当您启动一个比较,会出现一个新窗口,显示比较的结果。该窗口的标题栏显示的差异(即编辑)这两个项目之间的总数。在两个主面板显示项目相 比彩色化来表示每个修改,删除和改造的第一个项目进入第二所需的加法。你可以在文本或十六进制形式查看每个项目。选择“sync views(同步视图)”选项可以使您同时滚动两个小组等快速找出在大多数情况下有趣的编辑。
要使用Burp extender功能,需要一下几个步骤:
1.首先必须要有java环境 2.在Burp extensions 下单击add添加
3.选择查找.jar后缀插件,点击确定之后下一步就是安装了 4.安装好了会提示安装成功,并且在如下图中显示
5.如果是python扩展的话需要先到options中配置好python环境并且安装jython环境
下表显示了所有已安装的扩展名列表。您可以添加,删除和使用按钮的扩展表重新排序的扩展。请注意:
该扩展名的显示顺序是,其中的任何注册的侦听器和其他推广资源将被调用的顺序。
扩展可以卸载,但保留在表中,以便能够方便重装稍后time.To切换扩展的负载状态,而不从列表中删除它,在“loaded”栏或扩展详细信息面板中单
击该复选框。注意:您可以快速重新按Ctrl +单击“loaded”复选框的延伸。这将卸载并重新加载该扩展名,而不显示确认对话框。
要运行用Python编写的扩展,你首先需要配置Jython的独立JAR的位置,在Python环境选项。
选择在扩展表中的项目显示在下部面板的扩展信息。详细信息选项卡显示以下信息:无论是扩展当前加载的。您可以点击复选框,加载或卸载选定的扩展。扩 展名。扩展可以通过编程设置其显示在用户界面中自己喜欢的名字。您可以手动编辑,如果需要此名称。扩展( Java或Python)的类型。从中加载该扩展名的文件。的方法,听众,并在由扩展使用其他资源的详细信息。输出选项卡包含扩展的标准输出流的细节,以 及错误选项卡包含有关标准错误流相同的信息。为每个数据流,可以配置应用程序的输出是否应该被定向到系统控制台,或者保存到文件中,或者在UI中显示出 来。请注意:写法基于UI的输出窗口有大小限制,不适合用于重型记录。扩展是负责指导他们的输出和错误消息,其中burp已经分配给他们正确的数据流,并 通过扩展API的编程可用。扩展不遵守这个可以直接直接输出到系统控制台,无论在这里具体确定的设置。
此选项卡包含可用于创建Burp extensions API的细节。该列表显示,可在Burpk运行版本的API。从列表中选择一个接口的名称,显示界面代码全部。
您还可以使用“save interface files(另存接口文件)”和“save javadoc(保存Javadoc文件)”按钮来保存这些文件的本地副本,用于开发扩展的时候。
此设置控制启动时Burp是如何处理扩展。当Burp启动时,它会自动恢复可扩展的配置清单。如果选择此选项,Burp也将自动尝试重新加载列表中的该被装在其发生时Burp是关闭任何扩展。
设置允许您配置环境执行的是用Java编写的扩展。如果您的扩展使用任何库,你可以指定哪些库将被加载的文件夹。burp会搜索这个文件夹中的任何JAR文件,并且将在用于加载Java扩展类加载器的类路径中包括这些。
设置允许您配置环境执行的是用Python编写的扩展。使用Python扩展,您将需要下载的Jython ,这是Java实现的Python解释器。下列选项可用:在Jython的独立JAR文件的位置 - 这是您已下载的Jython的位置。你必须下载的Jython的独立版本。文件夹中加载的模块 - 此设置是可选的,可以用来指定从哪个Python解释器应该尝试加载所需要的您的扩展模块的文件夹。如果配置,此选项会导致Burp来更新指定的位置了 Python的sys.path变量。如果您已经创建了自己的一套Python库在多个单独的扩展使用使用此选项很有用。
注意:由于在Jython中动态生成Java类的方式,您可能会遇到内存问题,如果你加载多个不同的Python扩展,或者如果你卸载并重装一个
Python扩展多次。如果发生这种情况,你会看到一个这样的错误:java.lang.OutOfMemoryError: PermGen
space
You can avoid this problem by configuring Java to allocate more PermGen
storage, by adding a -XX:MaxPermSize option to the command line when
starting Burp.
例如:java -XX:MaxPermSize=1G -jar burp.jar
设置允许您配置环境执行的是用Ruby编写的扩展。使用Ruby的扩展,你需要下载的JRuby,这是Java实现的Ruby解释器。请注意,您可以在这里配置JRuby的JAR文件的位置,或者您也可以通过Java类路径在启动时加载的JAR文件。
Burp含有大量的影响的所有工具的行为套房范围的选项。
有如下选项:
此选项卡包含设置来控制Burp platform authentication,upstream proxy servers,SOCKS代理,timeouts,hostname resolution,以及范围外的要求。
设置允许您配置Burp platform authentication(平台自动)验证到目标Web服务器。不同的认证方式和认证可以配置为单个主机。
支持的认证类型有:Basic(基本的),NTLMv1,NTLMv2身份验证和摘要验证。域和主机名信息仅用于NTLM身份验证。
在“Prompt for credentials on platform authentication failure(提示平台上认证失败凭据)”选项会导致Burp显示交互式弹出每当身份验证失败时遇到的问题。
设置控制Burp是否会向外发送请求到Upstream Proxy Servers,或者直接到目标Web服务器。
您可以定义多个规则,指定不同的目标主机或主机组不同的代理服务器设置。规则的应用顺序,而目标Web服务器相匹配的第一条规则将被使用。如果没有规则匹配,burp默认为直接的,非代理连接。
您可以在目标主机规范中使用通配符(*匹配零个或多个字符,而?除了点匹配任何字符)。将所有流量到一个单一的代理服务器,创建一个规则*为目的主机。离开代理主机空白直接连接到指定的主机。
对于您配置的每个上游代理服务器,如果需要,可以指定认证方式和认证。支持的认证类型有:基本的,NTLMv1,NTLMv2身份验证和摘要验证。域和主机名信息仅用于NTLM身份验证。
设置允许您配置Burp使用SOCKS代理的所有传出的通信。此设置是应用在TCP层,所有出站请求都将通过这个代理发送。
如果您已经为上游HTTP代理服务器配置的规则,然后请求到上游代理服务器将通过这里配置的SOCKS代理发送。
如果“DNS查询在SOCKS代理”启用该选项,则所有的域名将由代理解决。没有本地查询将被执行。
设置指定要用于各种网络任务的超时。您可以指定以下超时:
Normal(正常) - 此设置适用于大多数网络通信,并确定长期burp怎么会放弃已经发生了超时的请求,并记录之前等待。 Open-ended responses(开放式的回应) - 此设置仅用于需要响应不包含内容长度或传输编码的HTTP标头被处理的。在这种情况下,burp确定该传输已经完成之前,等待指定的时间间隔。 Domin name resoolution(域名解析) - 此设置确定如何经常burp会重新执行成功的域名查找窗口。这应该被设置为一个适当的低的值,如果目标主机地址被频繁地改变。 Failed domain name resolution(失败的域名解析) - 此设置确定burp多久将重新尝试不成功的域名查找窗口。 值以秒为单位。如果选项是空白的,然后burp永远不会超时的功能。
设置使您可以指定主机名映射到IP地址,来覆盖你的电脑所提供的DNS解析。
每个主机名解析规则指定一个主机名,并应与该主机名关联的IP地址。规则可以单独启用或禁用。
这个功能可能是有用的,以确保请求的正确前进转发时,hosts文件已被修改为从非代理感知厚客户端组件进行流量的不可见的代理。
可用于防止Burp从发行任何超出范围的要求。当你需要保证没有请求做出不在范围的为你目前的工作目标,它可以是有用的。即使你的浏览器使得对于超出范围的项目要求,即将卸任的请求将通过Burp被丢弃。
您可以启用此功能为当前目标范围。或者,您可以使用URL匹配规则定义自定义范围。
设置控制重定向的类型的Burp会在它被配置为跟随重定向的情况下理解。
可以选择重定向的种类如下:
1)3xx status code with location header 2)refresh header 3)meta refresh tag 4)JavaScript driven 5)与Location标头的任何状态码
注意,Burp在以下重定向到特定的目标行为是由每个单独的Burp工具内设置(例如,根据目标范围内)来确定。
可以告知Burp哪些URL返回“流媒体”的反应,这不终止。然后Burp会不同于正常的反应处理这些反应。流式反应通常用于像不断更新,现申请价格数据的功能。
控制Burp处理与状态100的HTTP响应的方式。当一个POST请求发送到服务器,这些反应常发生的,它使一个临时的响应请求体已被发送之前。
下面的设置:
understand 100 continue response(了解100继续响应) - 如果选中此选项,Burp会跳过中期响应和解析真正的响应头像状态代码和内容类型的响应信息。
Remove 100 continue headers除去100继续头 - 如果选中此选项,Burp会在此之前被传递到单独的工具从服务器的响应中删除任何中期头部。
有时候,你可能有困难的谈判与某些Web服务器的SSL连接。
Java的SSL协议栈包含了几个小鬼,和失败与某些不寻常的服务器配置工作。为了帮助您解决这个问题,Burp,您可以指定哪些协议和密码应该在SSL
协商提供给服务器。下面的其他选项可用:自动选择对谈判失败兼容SSL参数 -
如果启用此选项,那么当Burp失败时使用配置的协议和密码进行谈判的SSL
,它会探测服务器,试图建立是由双方支持一组兼容的SSL参数服务器和Java
。如果找到兼容的参数,Burp缓存此信息,并使用在第一个实例中的参数具有相同的服务器未来的谈判。这个选项通常是可取的,可避免需要解决SSL问题,
并尝试使用协议和密码。启用阻止Java安全策略的算法 - 从Java 7的,
Java安全策略可以被用来从SSL协商被用于阻止某些过时的算法,以及其中的一些默认情况下(如MD2
)受阻。现场许多Web服务器都使用这些过时的算法,
SSL证书,它是不可能使用默认的Java安全策略来连接到这些服务器。启用此选项允许Burp在连接到受影响的服务器时使用过时的算法。对此选项的更改
才会生效当您重新启动Burp。允许不安全的SSL重新协商 -
此选项可能会使用一些客户端的SSL证书时,或试图周围其他的SSL问题的工作是必要的。
SSL
允许您配置客户端SSL证书,当目标主机申请一个Burp会使用。您可以配置多个证书,并指定每个证书应使用的主机。当主机请求的客户端SSL证书,Burp会在列表中的主机配置匹配被连接的主机的名称中使用的第一个证书。您可以在目标主机规范中使用通配符( 匹配零个或多个字符,而?除了点匹配任何字符) 。要使用一个证书,每当任何主机请求之一,使用作 为目标主机。客户端证书支持以下类型:文件( PKCS # 12 ) - 你将需要配置的证书文件的位置和密码的证书。硬件令牌或智能卡( PKCS # 11 ) - 你将需要配置PKCS#11库文件的位置,为您的设备,您的PIN码,然后选择从那些可用的证书。该PKCS#11库文件是用软件为您的设备安装的本机代 码文件。在Windows上,Burp可以自动搜索常见位置找到您所安装的库文件。
此信息仅面板包含从Web服务器接收到的所有的X509证书的详细信息。双击表格中的项目,以显示该证书的完整细节。
此选项卡包含的设置session handing rules,the cookie jar,and macros。
当执行任何类型的Web应用程序的测试,你可能会遇到与会话处理和地区的挑战。
例如:该应用程序可终止被用于测试会话,无论是防守还是其他原因,使后续的请求是无效的,直到会话恢复。某些功能可能使用改变必须与每个请求(例如,妨碍
请求伪造攻击)提供的令牌。某些功能可能需要一系列的要求被测试前,作出其他的请求,获取应用程序到一个合适的状态,它正在接受测试的要求。执行自动化测
试任务,如起毛或扫描时,可能会出现这些问题,当你手动测试也可能出现。Burp的会话处理功能包含一系列的功能,以帮助在所有这些情况下,让你继续你的
手动和自动测试,同时Burp需要在后台为你的问题的照顾。
Burp让你定义的会话处理的规则清单,让您非常细粒度地控制Burp处理应用程序的会话处理机制和相关的功能。每个规则包含一个作用域(什么规则
适用于)和行动(什么规则呢)
。对于每一个即将离任的要求,即Burp它决定了所定义的规则在范围的请求,并执行所有这些规则的行为的顺序(除非条件检查行动决定不采取进一步行动,应
适用于要求提供) 。在范围内为每个规则可基于任何正在处理的请求的下列功能或全部来定义:
Burp工具发出的请求。
请求的URL。的请求中参数的名称。每个规则可以执行一个或多个动作,例如:更新cookie从Burp的蜜罐。验证当前会话。运行宏(请求的预定义的顺
序)
。通过创建不同的范围和行动多条规则,你可以定义行为的层次结构Burp将适用于不同的应用和功能。例如,在一个特定的测试可以定义如下的规则:对于所有
的请求,从Burp的cookie
jar添加cookie。对于请求到特定的域,验证当前会话与该应用程序仍处于活动状态,如果没有,运行宏在应用程序重新登录,并更新蜜罐用得到的会话令
牌。对于请求到包含__ csrftoken参数特定的URL ,首先运行一个宏来获取有效__ csrftoken价值,并提出请求时使用此。
需要申请Burp的会话处理功能,以对现实世界的应用程序的功能的配置往往是复杂的,并且就很容易犯错。您可以使用会话处理示踪剂,以帮助您解决您的会话处理配置。
示踪显示,已经由会话处理功能的处理(即,其中至少一个会话规则已经应用)每个请求的列表。对于每个处理请求,所述示踪剂表示规则和进行该操作序列,并且改变到在序列中的每个步骤中的电流要求而作出。
请注意,会话处理示踪规定了所有受影响的HTTP请求的处理和存储开销。您应该只与故障排除会话处理的规则问题,当使用的示踪剂,不应该离开它通常运行。
Burp维护一个cpploe干罐,用于存储所有你访问的网站发出的cookies 。密罐是所有Burp的工具之间共享。您可以配置哪些工具Cookie罐应监测,以更新的cookies 。默认情况下,蜜罐是基于代理和蜘蛛的工具流量更新。Burp监视由配置工具接收到的响应,并更新蜜罐与设置任何新的Cookie。在代理的情况下,从浏 览器传入的请求也被检查。凡申请在前面设置一个永久性的Cookie这是目前在您的浏览器,这是需要你的会话进行适当的处理,这是很有用的。有Burp更 新基础上,通过代理请求的蜜罐意味着所有必要的cookie将被添加到蜜罐,即使你的应用程序当前访问期间不更新该cookie的值。您还可以查看手工蜜 罐和编辑的cookie的内容,使用“打开蜜罐”按钮。蜜罐可用于会话处理的规则和宏来自动更新从蜜罐曲奇传出请求。蜜罐荣誉Cookie的域范围,在模 仿的cookie处理规格Internet Explorer的诠释方式。路径范围不兑现。
macro是一个或多个请求一个预定义的顺序。您可以使用会话处理规则中的Macro来执行各种任务。典型用例的宏包括:获取该应用程序(如用户的 主页)的页面来检查当前会话仍然有效。进行登录,以获得新的有效的会话。获得令牌或随机数作为另一个请求中的参数来使用。当Scanner或fuzz(模 糊测试)在一个多步骤的过程的请求时,执行必要的前述要求,以获得应用到其中的目标请求将被接受的状态。在一个多步骤的过程中,“attack”的请求 时,在完成该过程的剩余步骤,以确定所执行的动作,或者获得的结果,或者从该过程结束时的错误消息后。以及请求的基本序列,每个宏包含一些关于如何饼干和 参数的序列中应处理的重要结构和单件之间的任何相关性。
设置允许您控制Burp的用户界面的外观。您可以配置用于整个用户界面(除了HTTP消息的显示)的字体大小,也是Java的外观和感觉。更改这些设置就会生效时Burp重新启动。
设置允许您控制HTTP消息会显示在原始的HTTP消息编辑器中。您可以设定字体和点大小和字体平滑是否被使用。您还可以配置为请求参数和响应语法语法彩色化是否完成。有很多小伙伴说乱码,就在这里设置。
设置控制Burp显示原始的HTTP消息时如何处理不同的字符集。可用的选项有:
1)自动识别每个消息的字符集的基础上,邮件标题。这是默认选项,可让您同时在使用不同字符集的邮件的工作。 2)对所有消息使用平台默认的字符集。 3)显示消息的原始字节(使用ASCII编码),而不处理任何扩展字符。 4)对所有消息使用一个特定的字符集。
HTTP头始终显示在原料的形式 - 字符集编码选项只适用于邮件正文中。
需要注意的是所需的一些字符集的字形不支持的所有字体。如果你需要使用一个扩展的或不寻常的字符集,你应该首先尝试进行系统的字体,如宋体或Dialog。
Html rendering是html转义的意思,渲染HTTP消息编辑器显示HTML内容中标签约,因为它会出现在你的浏览器。该选项控制Burp是否会作出所 需要的完全呈现HTML内容(例如,用于嵌入式图像)的任何额外的HTTP请求。使用此选项涉及的速度和HTML渲染质量之间的权衡,以及您是否希望避免 作出任何进一步的请求到目标应用程序。
此选项卡包含的设置hotkeys(热键),logging(记录),temporary files(临时文件)的位置,automatic backup(自动备份)和scheduled tasks(预定的任务)。
设置允许您配置快捷键为常用操作。许多类型的动作可以被分配一个快捷键,在以下类别:
1)特定于某个HTTP请求或响应的动作,例如“send to repeater(发送到转发器)”。 2)全球行动,如“Switch to proxy(切换到代理服务器)”。 3)在编辑操作,如“剪切”和“撤消”。
一些热键的默认配置。需要注意的是如果你使用它们频繁,可以给它们分配一个快捷键。
所有的快捷键必须使用控制键(或在OSX上的Command键),也可以使用Shift和其他可用的修饰符。请注意,在某些Windows安装中的Ctrl + Alt组合是由Windows视为等同于键AltGr,并可能导致输入的字符时,在文本字段中压显现出来。
设置控制HTTP请求和响应的记录。可以记录每个工具或所有Burp流量进行配置。选择你要记录的,会弹出一个框让你选择保存的地方,可以在扫描的时候把扫描的一些扫描记录下来,然后放到sqlmap里进行跑,很淫荡的想法。
保存一些零时文件的地方,可以设置系统默认,也可以自定义路径。
自动备份功能。设置允许您配置Burp保存的所有工具‘的状态和配置的备份每隔多少分钟,并且还可以选择退出。
使用这些选项意味着你一般都会有你的工作,最近的备份副本在Burp异常退出的事件。如果您已配置目标范围为你的工作,你可以使用“include in-scope items only(仅仅包括在范围内的项目)”以减少数据必须保存量。
计划任务。仅限专业版使用,您可以使用任务调度程序自动启动和停止某些任务在规定的时间和间隔时间。您可以使用任务计划程序来启动和停止某些自动化 任务了几个小时,而你没有工作,并定期或在特定时间保存您的工作。要使用此功能,请选择在Burp的任何地方一个HTTP请求,或任何部分目标站点地图, 并在上下文菜单中的“Engagement(参与工具)”中选择“Schedule task(计划任务)” 。或者,您也可以通过在计划任务面板中直接添加一个新的任务。创建一个新的任务将打开一个向导,可以配置任务的详细信息。
任务计划有以下类型:
1)从URL扫描 2)暂停主动扫描 3)继续主动扫描 4)从URL蜘蛛 5)暂停蜘蛛 6)保存状态
根据任务的类型,您还可以配置一个URL (如扫描)或文件(如保存状态) 。每一个任务需要有配置了启动时间。或者,您可以配置任务重复在定义的时间间隔。
[专业版]此功能可用于生成一个证明了概念验证(PoC )跨站点请求伪造(CSRF )攻击对于一个给定的请求。要使用此功能,请选择在Burp的任何地方URL或HTTP请求,并选择上下文菜单中的“Engagement tools(参与工具)”中的“Generate CSRF Poc(生成CSRF的一键通)”。
Burp显示了在顶部面板中选择的完整的请求,并将生成的HTML CSRF在较低的面板。在HTML使用的形式和/或JavaScript来生成在浏览器中所要求的请求。您可以手动编辑的要求,并单击 “regenerate(重新生成)”按钮,根据更新的要求来重新生成CSRF的HTML 。你可以测试生成的PoC的效果在浏览器中,使用“测试中的浏览器”按钮。当您选择此选项,可以粘贴到浏览器(配置为使用Burp的当前实例作为其代理) 一个唯一的URL 。由此产生的浏览器请求由服务Burp与当前显示的HTML,然后你可以决定的PoC是否是通过监测得到的请求( s)表示,通过代理服务器进行了卓有成效的。
HTTP消息编辑器是用于整个Burp查看和编辑的HTTP请求和响应。以及显示原始消息本身,编辑器包括大量的功能,帮助您快速进一步分析这些消息,推动Burp的核心工作流程,以及进行其他有用的任务。
此功能可用于发现内容并不会从您可以浏览或蜘蛛可见内容链接功能。
要使用此功能,请选择在Burp的任何地方一个HTTP请求,或任何部分目标站点地图,并在上下文菜单中的“参与工具”中选择“查找内容”。
Burp使用各种技术来发现内容,包括姓名猜测,网络蜘蛛,并且从命名的应用程序中使用的观测约定外推。发现的内容被显示在一个特殊的网站地图是特定的发现会话,并且还可以任选地加入到suite site map。
此选项卡显示您发现会话的当前状态。切换按钮指示是否会话正在运行,并允许您暂停和重新启动会话。
下面的信息则显示该发现会话的进展:提出的要求数在服务器响应传输的字节数网络错误数排队的发现任务数蜘蛛排队的请求数排队分析响应数排队的个人发现任务都显示在表格中。发现引擎的工作原理递归,当一个新的目录或文件被发现,进一步的任务是源于此,这取决于配置。
这些选项可让您定义了内容发现会话启动目录,以及是否文件或目录要有针对性。下列选项可用:
Start directory(启动目录) - 这就是Burp就会开始寻找内容的位置。这条道路及其子目录内只有项目将在会议期间提出要求。
Discover(发现) - 此选项确定会话是否将寻找文件或目录,或两者兼而有之。如果你正在检查的目录,你可以选择是否以及如何深递归到子目录中发现的。
这些选项可让您配置Burp应该使用生成的文件名来测试源。下列选项可用
内置的短文件列表 、内置短路目录列表 、内置长文件列表 、内置长目录列表
发现在目标站点上使用的名称。如果选择此选项,Burp会维护所有的目录和文件名茎已发现的目标网站上的名单,也将检查这些在测试每一个新的目录。
根据发现的物品推导。如果选择此选项,Burp会尝试猜测基于那些已经被发现的项目名称。例如,如果该目录AnnualReport2011被发现,Burp也将检查AnnualReport2012,AnnualReport2013等。
控制如何发现会话添加文件扩展名,正在测试。该文件的本身是根据文件名选择导出。当每个文件的在测试时,Burp会检查各种不同的扩展名,根据这些设置。下列选项可用:
1)Test these extensions(测试这些扩展)- 此选项可让您设定的扩展,Burp会经常检查清单。你可以微调的基础上已知在对目标应用程序中使用的技术,默认列表。 2)Test all extensions observed on target site(测试目标点观测到的所有分机) - 如果选择此选项,然后Burp会自动检查是否存在已在使用中被观察到目标站点上的文件扩展名。此选项很有用,当你不知道到底是什么扩展或技术都在使用。您还可以配置你不想要检查,即使发现是在使用中(如图像文件)的扩展名列表。 3)Test these variant exxtensions on discovered files(在测试文件中发现这些变异扩展) - 此选项可让您设定的扩展名列表的Burp会额外检查以便发现文件名。这个选项是检查现有的文件的备份副本很有用。 4)Test filestemswith no extension(测试文件无扩展名) - 如果选择此选项,Burp会为每个文件检查不带扩展名添加。
用于发现内容时发出HTTP请求的引擎,并带有套房站点地图互动。下列选项可用:
1)Case sensitivity(区分大小写) - 这个设置控制Burp是否会处理文件名的情况下,敏感。如果选择“自动检测”被选中,然后Burp会通过处理文件名的情况下灵敏启动,并在发现的第一个新项目,将测试情况变化的服务器的处理。根据所治疗,Burp可能恢复到处理文件名的情况下不区分大小写。 2)Add discovered content to suite site map(发现添加内容到套房站点地图) - 如果选择此选项,然后在当前会话的发现确定了新的项目将被自动添加到主浴室的站点地图。 3)Copy content from suite site map(复制主站点地图的内容) - 如果选择此选项,则发现会话将复制任何现有的相关内容从主套房站点地图进去发现网站地图,以提供发现新的内容较强的出发基础。 4)Number of discovery threads(蜘蛛从已发现的内容) - 如果选择此选项,则发现会话将执行常规的网络蜘蛛,并且将处理响应发现请求寻找链接到其他新的内容。发现执行绪数目 - 此选项控制并发请求数的发现引擎能够作出。蜘蛛线程数 - 该选项控制并发请求数的蜘蛛功能是能够使,如果启用。
该发现会话使用自己的站点地图,显示所有已发现的定义范围内的所有内容。如果您已配置Burp的话,新发现的项目也将被添加到Burp的主要站点地图。
用来显示当前Burp的扫描代理的一些状态,这个没什么介绍的。
SqlMap是一个开源渗透测试工具,它可以自动检测和利用SQL注入漏洞和接管数据库服务器的过程。它配备了一个功能强大的检测引擎,许多利基功 能,为最终的渗透测试和广泛的交换机从数据库中指纹持久的,在数据从数据库中获取,通过访问底层文件系统和操作系统上执行命令的输出带外连接。如图效果图
需要python、java环境,并且需要下载sqlmap.py、gason.jar插件。
下载地址:https://github.com/sqlmapproject/sqlmap
http://www.praetorian.com/tools/gason-0.9.6.jar
图形界面挺不错的,对于使用sqlmap新手挺好的,有时候使用命令界面的时候不知道命令了可以用这个图形界面查看命令怎样使用,比如:我不知道怎么在后面加数据库参数,则可以如下图所示
如上有地址参数了在右下角点击run即可,图形界面就不做过多的介绍了,其使用方法和sqlmap命令界面是一样的,主要是结合了burp唯一的好处就是用burp检测到注入了然后可以直接发送到sqlmap进行注入。而且操作简单。
在Notes选项卡中,您可以:
- 储存注意事项:储存任何目前开启的文件到一个文件中。 - 负载注:从文件加载以前保存的一套纸币。 - 新文本:添加一个标签一个新的文本文档。 - 导入文本:加载一个文本文件的内容。 - 新的电子表格:添加一个标签一个新的电子表格。 - 导入电子表格:加载一个CSV文件的内容。 - 您还可以导出单个音符的标签到外部文件。
界面如下:
在Burp主界面Extender>>Extensions>>Burp Extensions下的add按钮
1)可以从Burp主界面的Proxy history里选择发送到notes。 2)切换到notes标签选项卡即可。 3)Save notes(保存文本) 4)也可以导入文本和表格文件
大多数的网站压缩其资源,如JS文件,以便增加装载速度。然而,安全性测试和调试一个压缩的资源是不容易的事。这是一个Burp开源扩展,这使得它 可以美化大部分资源。因此,这将有助于Web应用程序安全研究人员查看压缩资源更容易。它还可以帮助他们有足够的资源内的浏览器解压缩后的版本(如 JS,CSS,HTML,XML,等等)。
1)下载jsbeautifier.jar 文件和libs目录 2)点击Extender>>add选择jsbeautifier.jar
直接勾选或者在响应请求选择beautify this!即可
这里我使用的是谷歌安卓模拟器Android SDK,大家可以根据自己的系统来定,我使用的是window64系统,大家选择下载的时候可以注意一下,同时也是使用这个系统来演示。下载地 址:http://developer.android.com/sdk/index.html
下载后,里面有SDK的manager.exe和其他文件夹。现在,我们建立一个模拟器,可以通过Android SDK管理器来创建我们的AVD(Android的虚拟设备); 这将是我们虚拟的Android手机。
1、设置安卓虚拟机如图
2、选择TOOLs下的Manager AVDS
3、启动之后,设置如下配置
4、通过Start开启安卓虚拟机
5、界面如图
1、Burp代理设置如下
2、安卓模拟器设置,Menu>System setting>More>Mobile networks>Access Point Names> 选择默认的APN或者新建一个并且设置为默认代理
3、保存好了之后打开浏览器输入地址
最后附上刚下载的一个百度知道应用程序,也是可以抓包的
具体详情参考:http://resources.infosecinstitute.com/android-application- penetration-testing-setting-certificate-installation-goatdroid-installation/
首先安卓手机要跟电脑同一个网段,连接到同一个wifi下就可以了,我这里 网关是192.168.1.1 物理机 192.168.1.5 手机ip 192.168.1.2
1)手机设置: 打开手机-->设置->WLAN-->选择你的wifi进入编辑,在代理这里设置为手动,设置如下 主机名:192.168.1.5 //也就是我物理机的ip 端口:8088 保存即可。
2)Burp Suite设置
导入证书到手机中其实也很简单,就是把电脑上已经安装好的证书导出来到内存卡中,然后从内存卡中安装证书
然后命令为PortSwigger CA导出到桌面,复制到内存卡中步骤如下: 打开手机-->设置-->安全和隐私-->凭据存储-->从存储设备安装,选择你刚才证书存放的路径,安装即可。 如果安装好了,就可以在安全和隐私-->凭据存储-->受信任的凭据-->用户下即可查看到
选择Payload type里的Brute forcer(暴力破解),在下面Payload options选项会出现组合的一些字母或数字,可以自己加,比如一些特殊字符什么的,生成的字段长度范围Min length-Max length,比如这里我只是需要4个,那就两个都写4。
根据提供的用户名然后进行拆分
年月日都可以自己定义,有几种可选,如下
说白了就是第二个值会替换前一个值
比如我想把Length为1310的数据导出来,则可以先对length排序下,然后选择length为1310的所有数据右击选择高亮(随便选择一种颜色,除了白色,默认情况是白色)
点击Filter,勾选show only highlighted items(表示显示仅仅显示高亮项)
同理也可以在上述步骤中选择添加注释(add commented),这里就应该选择show only commented items
如满足以上操作,即可选择Save-->Result table,即弹出如下窗口
这里all rows是保存你所有选择的到的结果,selected rows是导出你选择的数据, Save header row如果勾选,则保存导航字段名,Delimiter表示字段之间以什么相隔开tab--一个tab键,Custom--自定义 下面有一些就是保存的时候需要保持什么就勾选,反之。
我们把需要爆破的md5值或者其他的需要爆破的同一放到一个txt文本里,这里我随便加密了几个放到里面
以www.cmd5.com网站为例做的批量解密 首先,还是同样的设置好代理之后访问www.cmd5.com,然后抓包
在密文处其实可以随便写什么,但是为了便于我们后面能够直接看出解密出的值我们还是写一个正常的。
通过抓包到的数据我们可以看出我们填写的密文在哪
发送到repeat先,把我们想要的结果匹配到
接着我们发送到intruder,设置我们输入的值两边加上$
选择字典
再调节一下线程,最好是调低一点,太高了可能会解密失败,而且设置解密失败重试2次最好了
匹配解密出的结果
点击start attack
解密效果,后面导出就不用讲了,看过前面的应该就知道怎么导出想要的结果
标签:
原文地址:http://www.cnblogs.com/hito/p/4482837.html