【网络安全】Burpsuit 学习笔记(二)

7.比较站点地图

你可以使用 Burp来对比两个站点地图,并突出其差异。这个功能可以通过各种方式来帮助寻找不同种类的访问控制漏洞,并确定一个大型的应用程序的哪一块需要进行人工密切检查。此功能的一些典型使用情况如下:
你可以使用不同权限级别的账号来映射应用程序,并比较得到的结果来确定一个功能是对其中的一个用户而不是其他的用户是可见的。
你可以使用一个高权限的账号来映射应用程序,然后使用一个低权限的账号来重新请求整个网站地图,以确定是否有访问权限的限制。
你可以使用两个相同权限的不同账号来映射应用程序,以确定哪些是需要特定的用户标识符来进行访问的敏感资源的事件,并确定是否正确地划分了每个用户的数据。
你可以通过在主站点地图上的上下文菜单来使用”compare site maps”功能。打开一个向导,需要你配置要比较的站点地图的细节,以及比较的方法。当你选择了需要比较的站点地图,可以选择下面的这些选项:显示在 Burp的目标选项中的当前站点地图。从一个以前保存 Burp文件加载过来的站点地图。以不同的 session context,对上面的两者进行重新请求。
你可以选择包含所有站点地图的内容,也可以限制选定范围内的项目。如果你选择以一个不同的 session context,特别重要的是不要包括会破坏上下文的请求—例如登陆,注销,用户模拟功能等等。在执行比较时,Burp通过对第一个站点地图的每一个请求与第二个站点地
图的请求进行对比,反之亦然。通过对匹配请求的响应进行对比,来查找出所有的差异。对站点地图内不匹配的项分别进行标记为删除或添加。这样高度可配置的确切过程,允许你定制出针对目标应用程序的比较功能。下面列出了 Burp怎样比较两个站点地图的配置选项:
这里写图片描述
在大多数情况下,默认的选项能很好的工作,并对比在查询的字符串和消息里面的 URL文件路径,HTTP方法和参数的名称的请求。对于一些应用程序,你需要修改这些默认选项,以确认能准确地对请求进行匹配。例如,一个应用程序在同一个 URL上进行不同的操作,通过查询的字符串值来指定操作,你需要按他们的名字和参数的值匹配他们的请求。
下面显示的是怎样是 Burp请求与响应相匹配的设置选项:
这里写图片描述
同样,在大多数情况下可以使用默认设置。这些选项忽略了没有太大价值的 HTTP消息头和表单域,也忽略了空白响应。默认选项是减少无关噪声响应带来影响而设计的,让你能更容易地集中精力在差异上。下面显示了一个简单的站点地图对比结果。显示出在管理员权限下和用户权限下发出的请求映射出的站点地图。经过分析后,两个站点地图的不同点,用不同颜色标出,并显示出两者之间的添加,删除,修改(如果请求过整个第一个站点地图,在地图里将不会有添加和删除项)。对于修改项,表格里有若干不同列,来表示由第一个站点地图内容修改为第二个站点地图内容。当你选择其中的一项时,另一个站点地图里的相关的项也被选中,响应里面的修改点会被加亮:
这里写图片描述
要想分析出站点地图的对比结果,就需要明白指定应用程序的上下文和意义,以及人的理解能力。例如,上面的截图显示了不同用户访问主页时得到的不同响应。这两个响应显示出了登陆用户的不同描述,管理员权限的用户有一个附加的菜单项。这些不同都可以预见的,他们对应用程序访问控制的有效性没有影响的,因为他们仅仅只在用户界面上。
下面的截图显示了两种用户请求顶级管理页面时得到的响应。这里管理员用户可以看到可用的菜单选项,而普通用户只能看到”not authorised”消息。这些不同显示了访问控制得到了正确的配置:
这里写图片描述
下面的截图显示了每个用户在请求具有管理员功能的”list users”得到的响应。这里响应相同说明应用程序是有漏洞的,因为普通用户是不应该能使用这种功能,在他们界面里没有任何指向它的连接:
这里写图片描述
通过这个示例显示出,简单地对站点视图树的探索和查看项目的不同点,不足以评估应用程序的访问控制的有效性。两个想同的响应表明可能会有一个漏洞 (例如,管理功能暴露的敏感信息),也许会是安全的(例如,在显示登录用户个人资料的页面上),所有的这些情况可以共存的,甚至在同一个应用程序上。这就是为什么全自动化工具在探测访问控制漏洞过程中效率是如此的低下。
因此,Burp需要你密切地检查应用程序的功能,这不会减轻你的任务,对每一种情况都作出评估,看看访问控制是否正确的使用。站点地图的比较功能是一个尽可能自动化的过程,在一个清晰的表格里会给出你所需要的信息,并让你通过自己对应用程序的了解来发现任何的实际漏洞。

8.目标范围

这个”scope”选项是让你告诉 Burp,以什么样扫描水准,以及哪些主机和 URL来进行你的工作。你可以把目标范围大致想象成你有兴趣的并准备攻击的选项。
目标范围以许多方式影响单个 Burp工具的行为,例如:
你可以设置过滤器只显示范围内的项。
你可以告诉代理只拦截范围内的请求和响应。
网络爬虫只会跟踪范围内的链接。
在 Burp Suite专业版中,你可以启动自动扫描范围项内的漏洞。
你可以配置 Intruder和 Repeater重定向跟踪任何范围内的 URL。
通过告诉 Burp你的目标是什么,可以确保 Burp在你指定有兴趣的攻击目标后,以适当的方式进行一系列此类的举动。在任何情况下,你都可以随时微调目标范围和单个相关工具的工作方式,如果需要,你可以精准地控制 Burp的一切。然而 Burp-wide宽度设定提供了一种既快又简单的方式,在你开始工作之前,来告诉 Burp,游戏的规则是什么和什么是禁区,以及什么有价值的。
目标范围的配置功能非常强大,却很简单。在” scope”选项卡里的用户界面里,你可以自定义目标范围包括哪些或者不包括哪些的规则。对于每条规则,你都可以定义以下字段:
协议—HTTP,HTTPS,或者其他的
主机—这可以是一个正常的主机名正则表达式,也可以是标准格式的 IP区间段,例如,10.1.1.1、24或者 10.1.1-20.1-127。如果主机字段是空的,规则就会认为是任意主机。
端口—这是一个匹配正常端口号的正则表达式,如果为空,则认为是任意端口。
文件—这是一个匹配文件部分 URL的正则表达式,如果为空,则认为是任意文件。
当 Burp决定评估一个在目标范围内的 URL时,如果 URL匹配包含规则其中一条并不符合
任意一条不包含规则,这个 URL将被视为在目标范围内。这使你可以自定义一般范围的内的特定主机和目录,但排除该范围内特定的子目录和文件。例如,下面这样定义的目标范围会匹配 http://www.myapp.comhttps://staging.myapp.com以及在 https://www/myadd.com/admin目录下的内容的表达式,还有任何包含”logout”表达式的 URL。
这里写图片描述
像上面描述那样直接设置范围规则对许多用户来说,显得不太友好。有一个更简单的方法,就是让 Burp根据你在站点地图或其它地方使用上下文菜单给出的直观说明来为自己定义规
则。在你开始探测应用程序前,你需要简单地浏览目标页面,这样才能让它显示在站点地图上。然后,你可以选择一个或多个主机和目录,并通过上下文菜单把他们在范围内包含或排除。这个过程非常简单,大不多情况下,这会让你迅速地定义出满足你测试的所有规则:这里写图片描述

9.Burpsuit 代理

什么是 Burp代理
Burp代理是一个用来攻击和调试 web应用程序的交互式的 HTTP /S代理服务器。他就像一个在浏览器和目标服务器之间的中介人,并允许用户拦截,查看和修改两个方向上的原
始流量。
Burp代理允许你通过监视和操纵应用程序传输的关键参数和其他数据来查找和探索应用程序的漏洞。通过以恶意的方式修改浏览器的请求,Burp代理可以用来进行攻击,如:SQL注入,cookie欺骗,提升权限,会话劫持,目录遍历,缓冲区溢出。拦截的传输可以被修改成原始文本,也可以是包含参数或者消息头的表格,也可以十六进制形式,甚至可以操纵二进制形式的数据。在 Burp代理可以呈现出包含 HTML或者图像数据的响应消息。
除了每一个请求的操纵外,Burp代理保持着一个完整的历史记录,包括浏览器发送的每一个请求,所有的操作,以及接收到的所有响应。你可以复查较早的请求,并修改后补发任何请求,还能以原始的形式或者 web页面的形式来查看保存的响应。可以把两个方向上的整个会话记录到一个文件中,用来作进一步分析或者提供审查线索。
在 Burp Suite里,Burp代理是何其他工具紧密地集成在一起的。并允许把任意的请求和响应发送到其他工具里作进一步处理。通过一次单击,你可以把一个感兴趣的请求作为分析会话令牌的基础,或者经过人工修改后再发送,漏洞分析,或者使用 Burp Intruder进行一次自定义的自动攻击。
通过基于域名,IP地址,协议,HTTP方法,URL,资源类型,参数,cookies,消息头/消息体内容,响应代码,内容类型和 HTML页面标题的请求和响应的细微规则来控制 Burp代理的交互式行为。可以悄悄地执行配置操作,而不会影响任何请求。你可以晚一点查看历史记录以确认请求经过更严格检查。虽然使用了正则表达式匹配规则和替换规则,Burp代理还可以用来自动修改 HTTP请求和响应消息。
除了用户的主界面,在浏览上也可以控制 Burp代理用来查看请求历史记录和重发请求。Burp代理可以与上游代理结合起来使用。

使用 Burp代理

当 Burp代理运行后,HTTP/S代理服务器自动开启 8080端口仅作为回环接口。要开始
使用 Burp代理,需要简单地把你的浏览器的代理服务器设为 127.0.0.1 :8080,开始浏览。默认情况下,Burp代理配置的是自动拦截对非媒体资源的请求。显示出来后,可以查看和修改。其他的请求(图片和样式表)和所有服务器的响应自动地转发。这些默认动作是可以修改的。
这里写图片描述

10. 拦截选项卡(Intercept tab)

你可以使用快捷键 ALT+F和 ALT+D来代替”forwar”“drop”。
通过单击其中一个可以使用的选项卡,能以几种形式来显示和分析每个请求和响应。随着适当的消息类型的显示,可用选项卡也会随之显示或消失:
这里写图片描述
raw:这里显示的是纯文本形式的消息。在文本窗口的底部提供了一个搜索和加亮功能,可以用它来快速地定位出消息中的感兴趣的字符串,如错误消息。在搜索的左边有一个弹出项,让你来处理大小写问题,以及是使用简单的文本搜索还是正则表达搜索。
params:对包含参数(URL查询字符串,cookies消息头,或消息体)的请求,这个选项可以把参数分析成名称/值的组合,并且允许你能简单地查看和修改。
headers:这里以名称/值的组合来显示 HTTP的消息头,并且还以原始的形式显示消息体。
hex:这里允许你直接编辑消息的原始二进制数据。如果在文本编辑器里修改,某些传输类型(例如,使用 MIME编码的浏览器请求的部分)包含的二进制数据可能被损坏。为了修改这些类型的消息,应使用十六进制。
HTML/XML:对于响应中的这种格式的内容,为消息体提供了一种 syntax-colourised视图。
render:对于响应中的包含 HTML或者图像的内容,以视觉形式显示这些内容,最后会显示在浏览器里。
AMF:对于 Action Message Format格式的响应或请求,这显示了一个解码消息的视图树。如果需要编辑,你可以双击树上的节点来修改它们的值。
viewstate:对于包含一个 ASP.NET视图状态的请求和响应,会把视图状态的内容非序列化,这允许你查看任意敏感内容的数据。也可以表明视图状态 MAC是否可用(也就是视图状态是否可被修改)。
在任意的显示的项上右击打开上下文菜单可执行多种操作。也可以通过主界面上的”action”按钮来打开同样的菜单:
这里写图片描述
send to:你可以把任意的消息,或者选中的部分消息,发送到 Burp Suite中的其他工具里,来作进一步分析或攻击。
find reference[专业版]你可以在所有的 Burp工具里使用这个功能来搜索和选中项有关的HTTP响应。
discover content[专业版]你可以使用这个功能来探索和用浏览器和网络爬虫发现的内容不同的内容和潜在的功能。
schedule task[专业版]你可以使用这个功能来创建一些设定好运行次数和时长的自动执行的任务。
change request method对所有的请求,经过把所有相关的请求参数适当地搬迁到这个请求里来,你就可以自动地把请求的方法在 POST和 GET中间切换。通过发送恶意的请求使用这个选项来快速测试应用程序的极限参数是多少。
change body encoding对于所有的请求,你可以在应用程序/X-WWW格式的 URL编码和多重表单/数据之间切换消息体的编码方式。
copy URL这个功能是把当前的 URL完整地复制到粘贴板上。
copy to file这个功能允许你把选择一个文件,并把消息的内容复制到这个文件里。这个对二进制数据来说是很方便的,要是通过粘贴板来复制会带来一些问题。复制操作是在选择的文本上进行的,如果没有被选中的内容,则是针对整个消息了。
paste from file这个功能允许你选择一个文件,并把文件里的内容粘贴到消息里。这个对二进制数据来说是很方便的,要是通过粘贴板来复制会带来一些问题。粘贴操作会替换掉被选中的内容,如果没有内容被选中,则在光标位置插入这些内容。
save item这个功能让你指定一个文件,把选中的请求和响应以 XML的格式保存到这个文件,这里面包括所有的元数据如:响应的长度,HTTP的状态码以及 MIME类型。
don’t intercept通过这些命令可以快速地添加拦截动作的规则来阻止拦截到的消息,这些消息和当前的消息有着相同的特征(如远程主机,资源类型,响应编码)。
do intercept仅对请求有效,这允许你可以对当请求和响应的进行强制拦截。
convert selection这些功能让你能够以多种方案对选择的文本进行快速的编码和解码。
URL-encode as you type如果这个选项被打开,你输入的像&和=这样的符号会被等价的 URL编码代替。
拦截选项卡里包含了一个可以用来快速切换拦截开关状态的切换按钮。如果显示”intercept ison”,则消息会被自动拦截或者按照在选择卡里配置的拦截规则进行转发。如果显示”interceptis off”,消息不会被拦截。

猜你喜欢

转载自blog.csdn.net/keylion_/article/details/81322050