BurpSuite中文网站 > 最新资讯 > BurpSuite Scope怎么设置范围 BurpSuite Scope设置后为什么还有无关流量
教程中心分类
BurpSuite Scope怎么设置范围 BurpSuite Scope设置后为什么还有无关流量
发布时间:2026/06/30 17:48:48

  在做Web安全测试的时候,如果一开始没有把范围设定好,浏览器自动加载的那些广告脚本、统计代码、字体、图片,还有发给第三方接口的请求,全都会混进Burp的记录里面。所以,弄清楚Burp Suite的Scope到底该怎样去设置,关键就在于告诉Burp,哪些URL和哪些主机,才是我们这次真正要测的目标。按照官方文档给出的说法,Target Scope这个功能就是专门拿来划定当前项目里需要测试的URL和主机的,有了它,后面过滤浏览器和其他站点产生的那些杂音,就会方便很多。

  一、Scope的范围要怎么去设

 

  在动手设定Scope以前,得先在心里确认好,目前只对已经拿到授权的那些目标进行测试。Scope这个东西,管的是Burp内部的过滤和一些工具的控制范围,不能把它当成可以随意扩大测试范围的法律边界来用。

 

  1、直接从Target里面把目标加进范围

 

  先把要测的网站给打开,让浏览器产生的流量进到Burp里面。接着,顺着【Target】→【Site map】这条路径找进去,在站点地图里找到我们真正要测的那一个域名,在上面右键,从菜单里点击【Add to scope】。这个时候,Burp会弹出提示问要不要停止记录范围外的流量,如果你只是在测单一一个站点,就可以选择停止记录,这样往后历史记录列表里塞进来的脏东西就会少得多。

 

  2、到Scope的设置页自己手工添加

 

  另外,也可以去点击界面底部的【Scope settings】,在目标范围那一块里,找到那个叫做Include in scope的地方,点一下【Add】然后把要测的目标URL的前缀给填进去。按照官方文档的说明,Include这个东西,就是用来把我们真正要测的范围给圈进来的;而Exclude呢,则是用来把范围里头那些不要测的路径给单独踢出去的。

 

  3、根据需要按照路径来控制范围

 

  如果你要测的,其实只是网站底下的某一个二级目录,比如https://example.com/app/这种,那么在填URL的时候,就要把路径写得完整一些,不要只写到根域名就打住了,要不然整个站点都会被包进范围里去。Burp里面普通的Scope规则,用的是简单的URL前缀匹配,只要一个URL是以你写的那串前缀开头的,它就会被认为是落在这个范围之内了。

 

  4、用排除功能把那些不该碰的路径隔开

 

  比方说,网站登进去之后可能会有管理后台,有退出登录的接口,或者测试计划里明确写了哪些目录是不允许去测的,这时候就可以到Exclude from scope那里,把这几条路径的URL前缀给加上。Burp在做判断的时候,会先去瞅它是不是命中了Include里面的东西,紧接着再去瞧它有没有被列进Exclude里,顺序是非常清楚的。

 

  二、设好Scope以后为什么还是会看到不相关的流量

 

  有时候其实已经设好范围了,可是在界面上还是能看到那些不相干的请求,最常见的原因就是,你光把该测哪些东西给圈了出来,却没有去动代理那里的过滤规则,也没有把HTTP历史记录或者Logger那几块的显示和拦截规则给同步改过来。Scope这个东西说到底,只是决定了“什么算范围内”这一件事,它并不会让每一个窗口都自动帮你把范围外的东西给藏得干干净净的。

 

  1、HTTP历史记录那边可能还没把过滤打开

 

  进到【Proxy】→【HTTP history】这个页面,点开它配套的过滤器,在里头把那个“只显示范围内条目”的选项给勾上。这样操作完之后,历史记录的列表里面,才会只把Scope内的请求给留下来,否则范围外的那些流量,虽然不会被当成目标范围内的正式请求来处理,但很可能还是会在列表里面碍手碍脚。

  2、代理拦截可能还在对所有的请求都牢牢把着

 

  要是【Intercept】这个拦截功能,目前还是处在那种不管来的是谁、只要是经过代理的请求就统统拦下来的状态,那浏览器去偷偷访问的那些第三方域名,也会一个不落地被你给拦住。这时候就需要钻到代理的拦截规则里面,把拦截的条件设成“URL在目标范围内”。这样一来,也就只有那些确实属于范围内的请求,才会进入到需要人工放行的拦截流程里面去。

 

  3、浏览器自己本身就在后台不停地制造请求

 

  像浏览器里装的各种扩展、账户同步服务、搜索框的联想建议、证书状态的检查、远程字体的加载,还有那些统计分析的脚本,这些东西都会在背后产生请求。哪怕目标网站你就只开了一个页面,这些请求还是有办法顺着代理跑进Burp里面。面对这种情况,最让人省心的法子,就是专门准备一个只用来做测试的干净浏览器,把那些跟测试完全没关系的扩展全都关掉。

 

  4、范围规则可能写得太宽泛了

 

  如果当时只在框里填了一个example.com,那它自然就会包括下面挂着的很多路径;要是不小心又勾上了包含子域名的选项,那连带着它的那些子域名,也会一起跑到范围里面来。PortSwigger的文档里也提过一句,普通的Scope它是不支持那种复杂的通配符表达式的,要是需要控制得更精确一些,就应当去采用那种高级的范围控制方式。

 

  三、怎么去检查Scope是不是真的已经生效了

 

  范围全都设好以后,可别急着就开始大规模地去自动扫描或者重放请求,最好是先找那么几条已知的请求,拿它们去验一验这套规则,看看哪些是会顺利进入范围的,哪些又是会被坚定地挡在门外的。

 

  1、去看一看站点地图里颜色和范围的标记

 

  在【Target】→【Site map】那个页面底下,对着目标节点端详一下,再右键进去确认它是不是真的已经被加进Scope里面了。然后,分别拿一条本来就应该在范围内的路径,和一条已经被我们丢进排除列表的路径,对着刚刚设好的过滤器看看它们的显示效果,符不符合当初的预期。

 

  2、检查一下对于范围外请求的处理设定

 

  Burp的这套Scope设置,是属于当前这个项目级的配置,它会同步影响到好几个工具的行为。在Scope的设置页面里,还藏着一块专门管范围外请求该如何处置的设置区域,这个地方同样值得进去看一眼,确认它没有被设成什么奇怪的动作。

 

  3、最后在按下扫描按钮之前再做一次确认

 

  如果你接下来要启动扫描器,或者是跑一些自动化任务,那么在这个节骨眼上就务必再确认一件事,自己是不是只对Scope里面的那些请求启用了这些功能。因为在范围配得过宽的时候,不光扫描的时间会被大大拖长,而且你还可能一不小心就去碰到了那些不该碰的地址;可要是配得太窄了呢,又会把真正需要测试的接口给漏到范围外头去,那测起来就没有意义了。

  总结

 

  总结一下,在Burp Suite里面去设定Scope的范围,平时最常用的办法,要么是直接在Target下面的站点地图里,对着目标域名右键把它加入范围,要么就是跑到Scope设置页面里,自己动手去把要包括和要排除的URL前缀一条条填好。

135 2431 0251