freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课
FreeBuf+小程序

FreeBuf+小程序

官方公众号企业安全新浪微博

国内领先的互联网安全新媒体,同时也是爱好者们交流与分享安全技术的社区

使用Burp攻击Web Services
2013-03-07 12:52:46

译:pnig0s_小P

WSDL是一种XML格式的描述文档,用来描述web services在客户端与服务端之间通信接口的信息。它包含应用在和web services通信中可能用到的参数信息。这对渗透测试人员来说是一个好消息,因为我们通过wsdl文档中的描述信息来对web services进行测试和操作。

Burp是用来处理HTTP请求和响应的最好的工具之一。不过美中不足的是Burp并不原生的支持对WSDL文件的解析。通常我们的解决办法是使用SOAP-UI,并搭建一个代理来处理由SOAP-UI产生的请求。我已经写了一个插件来使得Burp能够接收一个WSDL请求并将其中的方法解析出来,并构造出对应的SOAP请求,方便测试人员发送请求到远端的web service。

Wsdler插件及其源码信息在Github的仓库地址:

https://github.com/NetSPI/Wsdler

Wsdler要求:


1,Burp1.5.01及更高版本。
2,必须从cmd来启动Burp


启动wsdler(插件和主程序放在同一目录下)


java -classpath Wsdler.jar;burp.jar burp.StartBurp


使用样例:

这里我们会中断一个在线商店的wsdl文件。

当针对wsdl的请求被中断之后,右键点击请求并选择解析WSDL。

会打开一个新的wsdler标签并将解析后的WSDL中的方法信息展示出来,还有针对每个方法的绑定和端口信息。简单来说,绑定信息描述了每个方法所使用的格式以及通信的协议。这里针对所有方法的绑定是InstantOrderSoap和InstantOrderSoap12。这里有两个绑定是因为wsdl文件支持对SOAP1.1和1.2分别创建请求,所以会有两个版本。最后,针对每个方法的端口信息就是这个请求将要被发送到的目的地信息。关于WSDL中所有节点属性的意义可以在这里找到:http://www.w3.org/TR/wsdl

针对方法的SOAP请求会在Burp下半部分的窗口中展示出来。插件中的解析函数还会自动填充方法中每个参数的数据类型。

Wsdler构造的请求是标准的Burp请求,因此它可以被Burp其他的模块直接使用。

这里SOAP请求被发送到了intruder模块来进行进一步测试。因为请求是基于XML的,Burp会自动识别出intruder要用到的参数。

目前,插件仅支持WSDL 1.1,但是我们正在更新对1.2/2.0的支持。此外我还会加入一个功能可以指定你自己的字符串和整型参数。如果有任何Bug或哪些功能你希望被添加,给我发邮件或直接在Github上联系我。

 via[netspi]

本文作者:, 转载请注明来自FreeBuf.COM

# burp # webservice # web服务
被以下专栏收录,发现更多精彩内容
+ 收入我的专栏
评论 按时间排序

登录/注册后在FreeBuf发布内容哦

相关推荐
  • 0 文章数
  • 0 评论数
  • 0 关注者
登录 / 注册后在FreeBuf发布内容哦