1.首先soap是什么:
对于应用程序开发来说,使程序之间进行因特网通信是很重要的。目前的应用程序通过使用远程过程调用(RPC)在诸如 DCOM 与 CORBA 等对象之间进行通信,但是 HTTP 不是为此设计的。RPC 会产生兼容性以及安全问题;防火墙和代理服务器通常会阻止此类流量。通过 HTTP 在应用程序间通信是更好的方法,因为 HTTP 得到了所有的因特网浏览器及服务器的支持。SOAP 就是被创造出来完成这个任务的。SOAP 提供了一种标准的方法,使得运行在不同的操作系统并使用不同的技术和编程语言的应用程序可以互相进行通信。
soap也也大量应用于手机app与服务器通信和数据传输中
2.确定soap的位置最重要:
我利用国外的shodan和国内的zoomeye来搜索asmx (webserver是微软推出的soap的框架,其服务的后缀多为asmx)
然后搜索以下链接:
http://www.zoomeye.org/search?q=asmx%20country%3A%22CN%22&p=6&t=host
https://www.shodan.io/search?query=asmx+country%3A%22CN%22
然后随便打开一个:
222.92.98.219:8080
访问:
http://222.92.98.219:8080/Service1.asmx
点Service Description
跳到
http://222.92.98.219:8080/Service1.asmx?WSDL
发现:
然后把
http://222.92.98.219:8080/Service1.asmx?WSDL
丢进
把要注入的值后面加上*
然后保存文件用sqlmap加载这个文件:
sqlmap -r 1.txt –dbs
对于应用程序开发来说,使程序之间进行因特网通信是很重要的。目前的应用程序通过使用远程过程调用(RPC)在诸如 DCOM 与 CORBA 等对象之间进行通信,但是 HTTP 不是为此设计的。RPC 会产生兼容性以及安全问题;防火墙和代理服务器通常会阻止此类流量。通过 HTTP 在应用程序间通信是更好的方法,因为 HTTP 得到了所有的因特网浏览器及服务器的支持。SOAP 就是被创造出来完成这个任务的。SOAP 提供了一种标准的方法,使得运行在不同的操作系统并使用不同的技术和编程语言的应用程序可以互相进行通信。
soap也也大量应用于手机app与服务器通信和数据传输中
2.确定soap的位置最重要:
我利用国外的shodan和国内的zoomeye来搜索asmx (webserver是微软推出的soap的框架,其服务的后缀多为asmx)
然后搜索以下链接:
http://www.zoomeye.org/search?q=asmx%20country%3A%22CN%22&p=6&t=host
https://www.shodan.io/search?query=asmx+country%3A%22CN%22
找到很多东西
然后随便打开一个:
222.92.98.219:8080
发现:
访问:
http://222.92.98.219:8080/Service1.asmx
发现:
点Service Description
跳到
http://222.92.98.219:8080/Service1.asmx?WSDL
发现:
xml格式的文档:
然后把
http://222.92.98.219:8080/Service1.asmx?WSDL
丢进
Acunetix Web Vulnerability Scanner 10.0
然后找到左边侧边栏的
然后用web services scanner来扫描:
然后我们随便找到一个sql注入漏洞,点开
在右边的侧边栏下面找到:
然后展开view http headers
然后把Request的内容完整复制出来,保存成一个文本文件:
把要注入的值后面加上*
改成下面样子:
然后保存文件用sqlmap加载这个文件:
sqlmap -r 1.txt –dbs