400-9988-316
发布时间:2021-01-29浏览量:438次
首先让我们来看看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服务