最后更新:2022-06-13 10:59:24 手机定位技术交流文章
从这一章开始,我们已进入伯普的综合使用.通过简单的学习一系列使用场景,逐渐熟悉过渡性测试中的Burp,如何结合其他工具,组合使用,提高工作效率。本章主要讨论测试Web服务服务,如何使用Burp Suite和SoapUI NG Pro的组合,服务接口的安全测试。
本章的主要内容如下:
使用场景和渗透性测试环境配置
综合软件在渗透测试中的应用
使用场景和渗透性测试环境配置
在日常网络测试过程中,除了基于浏览器显示技术的客户端应用程序之外,基于SOAP协议的Web服务也是常见的。WebService的出现旨在解决分布式、跨平台、低耦合实现不同编程语言之间的统一数据通信技术标准问题。在应用程序中,它通常被用作独立的业务模块,以外部提供特定的业务功能或为前面的段落的数据处理提供业务接口。因为SAOP协议中的接口定义使用XML作为描述语言,这与php和jsp等通信交互在渗透测试中非常不同。如果使用 burp来截获通信消息,以下图示了一个典型的消息内容:
它的 http 头条包含 SOAPAction 字段,消息体是<soapenv:Envelope>附有xml文本(有关WebService的更多信息,请自行搜索)。由于WebService的这些功能,因此在渗透测试中,我们还需要选择能够分析SOAP协议和WSDL描述的软件。这里,我们使用SoapUI NG Pro和Burp Suite。其 各自 的 作用 是 :
SoapUI NG Pro: 开始渗透测试过程, 分析通信信息, 收集负载后重新配置通信信息等.
Burp Suite: 代理拦截, 跟踪通信过程和结果, 继发和二次处理通信, 等.
如果显示在时间序列图中,它们的相应时间序列位置在通信过程中如下:

我们可以从图中看出来,作为代理服务机构,伯普作为通讯中介机构,在消息被截获后,可以进行编码 、 解码 、 传输 、 丢弃等等.并记录原始消息。SoapUI NG Pro是WebService的一个测试工具,通过构建不同的载荷类型来测试和验证脆弱性的存在。他们组合在一起,在复杂场景下进行WebService服务渗透检测的安全验证。
SoapUI NG Pro(英语:SoapUI NG Pro)是一个由SmartBear开发的企业应用级充电软件。试版的下载地址是: ReadyAPI Test Free Trial | SmartBear 。下载安装完毕 后,打开下图所示的软件的主接口(图中的一个部分是不同的功能视图之间的开关,图片的两个部分是菜单栏,图中的三个部分是常见的功能菜单,图4显示项目视图区域,图中5为主工作区,图表的六节为属性设置:

完成后,我们首先需要指出SoapUI NG Pro代理服务到Burp Suite。 假设我的Burp代理设置为:8080。 SoapUI NG Pro的配置是:

在完成上述配置后,我们已经具备了WebService的渗透测试环境,因此我们可以开始对特定WebService进行渗透测试。
综合软件在渗透测试中的应用
一旦配置了渗透测试环境,我们就可以开始测试。 这里我们可以自己写网页服务端口,或者通过搜索引擎选择在互联网上打开的网页服务
是的: http://graphical.weather.gov/xml/SOAP_server/ndfdXMLserver.php?wsdl
一个简单的渗透性测试过程主要涉及以下步骤: 1.首先,我们通过SoapUI NG Pro创建一个安全测试实例。

2.在弹出界面中,选择创建通过WSDL,然后输入WSDL地址。

3.当SoapUI NG Pro完成WSDL分析时,它自动生成一系列安全测试:

4.我们可以在上面图中添加和删除安全测试项目,默认情况下,这些安全测试都是选定的。比如,如果我们只是测试XPath注射液是否存在,你只能选择上图的下一个.当SopUI NG Pro基于安全测试项目时,完成创建不同的测试实例后,下面的图表显示了主要操作界面:

5.我们可以为单个测试选择指定的SOAPAction或在SOAPAction下的安全项目,您也可以直接点击运行,运行所有安全测试。如果测试项目太多,这项操作需要较长的时间执行,同时,如果并发数过多,这会给服务器造成压力,这是当测试时要记住的。如下图所示,图中的WebService接口正在安全测试中,调用的SOAPAction名称在进度栏中显示。
6. 如果 出现 下列 情况, 则 表示 测试 过程 已 完成 。

7. 在 这个 阶段, 我们 可以 查询 Burp 的 HTTP 历史 面板 中 刚刚 发生 的 所有 请求, 通过 不同 的 筛选 条件 搜索 我们 感兴趣 的 请求 或 响应, 并 将 它们 发送 到 其他 Burp 工具 组件, 以便 重新 配置 、 处理 和 核查 消息 。

了解SOAPUI的使用情况
SoapUI NG Pro安全测试包括以下:
边界扫描
SQL注入
XPath/XQuery注射
模糊测试
无效的参数类型
XML格式畸形
XML炸弹
跨站脚本
上传附件安全
自定义扫描
让我们以SQL注入为例,看看SoapUI NG Pro的安全测试配置参数。
每个安全测试项目的基本配置分为三个主要部分:
1.配置它主要指协议描述中定义的输入参数,编码类型, SOAP 协议中的特定参数(命名空间) 、 import )
2.自动化测试策略(策略)在测试过程中主要设置请求延迟 、 选择策略 、 运行模式等
3.高级通常指测试期间需要的 payload 值,或者生成 payload 我们还可以从上面的图中看到, payload 该值可以通过默认.in添加 github 上, fuzzdb这是一个广泛使用的词典库,我们可以使用它作为支付字典的测试。 项目地址是: https://github.project/fuzzdb
当配置完成后运行安全测试项目时,您可以查看在Burp中发送的负载值,如下面的XSS脚本测试负载图所示(在阴影选择部分):

同时,我们根据 http 状态代码序列响应,跟踪可疑响应消息,并从服务器获取敏感信息。

消息记录被伯普截获,我们可以把它送到Intruder,使用fuzzb来执行指定的Fuzz测试;它也可以发送到Repeater来手动修改消息内容并验证漏洞的存在。在某一特定领域有特定的脆弱性,例如,Xpath注入了一个漏洞,在测试过程中,测试者需要了解Xpath的注射原理,了解Xpath的语法,根据服务器端响应消息,手动创建一个特定的负载来获取更重要的信息。这些都是在正常工作中慢慢积累起来的,而不是一种基于工具的软件作为一种通用的解决方案,我希望读者会明白这一点。
使用Wsdler来测试WebService接口:
除了我们前面提到的SOAPUI NG Pro测试WebService之外,Burp还有一个由WSDL分析接口定义的手动测试WebService插件:Wsdler

如果你安装了此插件,则在Burp的 Proxy >> History 中,可以直接使用【Parse WSDL】功能。

确认使用解析WSDL分析函数后,该插件自动分析服务的操作、绑定和端点。被选入手术后,您可以查看SOAP消息文本。同时,额外的操作可以发送到其他Burp组件。

例如,我们发送上面图中的信息到Intruder,使用字体块来测试参数。

在发送Intruder后, 下列屏幕显示:

使用 payload 是 string 1, 从 1 到 50, 即 1,11,11,11 到 50 1, 以测试参数的边界长度:

生成 payload 和 执行它 的 结果 显示 在 以下 图 中 :

上面简单地描述了Wsdler的使用,在实际安全测试中,你可以使用Fuzzdb词典,进行更复杂的渗透性测试和功能验证.无论你使用什么工具,只要能通过一系列自动化或手动测试,完成WebService应用程序安全漏洞验证,确保应用程序的安全,提供应用程序的安全系统,这就是我们为渗透测试所设想的。
本文由 在线网速测试 整理编辑,转载请注明出处。