中电科旗下高技能IT教育培训机构

四川国信安职业培训学校四川国信安职业培训学校

tel

4009988316

常见问题常见问题

Web Service和Web API渗透测试指南

发布时间:2021-01-29浏览量:3080次

首先让我们来看看Web服务由哪些组成:

Web服务是由标准化的XML消息传递系统组成的软件。Web服务的好处在于它的所有通信都是XML格式,它们不限于任何操作系统或编程语言,它们构建于Web服务之上,都建立在开放标准之上,如TCP/IP,HTTP,Java,HTML和XML。

Web服务剖析

简单地说,任何基本的Web服务平台都是XML和HTTP的组合。

它们可以是:

SOAP(简单对象访问协议)

UDDI(通用描述,发现和集成)

WSDL(Web服务描述语言)

Web服务如何工作?

Web服务依赖于

XML来标记数据(作为标记和系统

SOAP传输消息

WSDL来描述服务的可用性。

Web服务渗透测试:

要开始渗透测试Web服务,我们总是需要以下初步知识:

1)示例API文件(WSDL/SOAP等)

2)示例请求/响应(了解值和数据传递)

3)入口点/URL

用于执行Web服务渗透测试的工具:

Fiddler

BurpSuite

Acunetix/IBM安全AppScan

ZAP代理

Curl

SOAPUI

接下来,我会简要介绍Web服务安全测试的各种测试用例,工具和方法。

黑盒Web服务渗透测试先决条件:

->Web服务描述语言(WSDL)文件

灰盒Web服务渗透测试先决条件:

->WSDL文件的方法示例请求/响应。

Web服务的渗透测试阶段:

1.信息收集

2.黑盒

3.Googlehacking(使用dorks发现网络托管网站的Web服务)

4.UDDI

5.Web服务发现(如果没有提供WSDL的话)

6.身份验证类型发现

测试方法:

->自动测试工具

SoapUIPro

OWASPZAP

IBMAppScan

HPWebinspect

WSBang

WSMap

->手动测试工具

SoapUIFree

Postman(和Burp配合使用)

->扩展:

SAML编辑器

SAML编码器/解码器

WSDL向导

Wsdler

SOA客户端

在Web服务中查找测试用例:

Fuzzing

XSS/SQLi/格式错误的XML

文件上传

Xpath注入

XML炸弹(DoS)

基于身份验证的攻击

重放攻击

会话固定

XML签名封装

会话超时

主机密码支持/有效证书/协议支持

散列算法支持

现在我们来看看如何使用SOAPUI执行自动扫描并获得Web服务的初步安全报告。

使用SOAPUIPro进行安全评估:

1.启动SOAPUI并创建功能测试用例

2.添加安全测试

3.选择“自动”模式为TestCase中的TestSteps生成默认安全扫描和断言,然后点击“Next”:

4.按OK以使用所描述的配置创建安全测试并打开安全测试窗口:

5.现在运行安全测试  

6.发布安全扫描后,你可以深入了解输出或生成报告以供你评估。

搭建易受攻击的Web服务的虚拟机环境:

●OWASP

Mutillidae

●PenTester实验室:Axis2Web服务和Tomcat管理器

●DVWS

●OWASPWebGoat

本系列的后续部分将重点讨论如何使用burpsuite+PostMan以及SOAPUI手动测试Web服务