文章目录
- 一、XXE外部实体注入
- 二、No-SQL注入
- [三、Insecure Direct Object Reference](#三、Insecure Direct Object Reference)
- [四、Mass Assignment](#四、Mass Assignment)
- [五、Information Disclosure](#五、Information Disclosure)
- [六、Command Injection](#六、Command Injection)
- 七、SQL注入
一、XXE外部实体注入
访问http://192.168.92.6/dvwsuserservice?wsdl
,发现一个SOAP服务。在SOAP中,简单来说,wsdl是一个接口文档,用来说明接口干什么;soap则是传输协议。
burp中,使用Wsdler
解析wsdl,并发送到repeater
模块。
可以看到这是一个用于用户名查询的API接口。
尝试XXE实体注入,直接读取文件
xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE root [ <!ENTITY test SYSTEM "file:///etc/passwd"> ]>
<username>&test;</username>
二、No-SQL注入
在Public Notes部分可以查询到任意用户的笔记
test' || '1'='1
进行注入
三、Insecure Direct Object Reference
实质 :就是可以通过对象进行访问。
查看数据包:
访问http://192.168.92.6/api/v2/notes/5
,就可以访问到刚刚创建的note。
四、Mass Assignment
访问192.168.92.6/admin.html
时,会跳转,这里应该是做了鉴权。
在登录的时候,服务器会返回一个admin参数,来指示该用户是不是admin用户。
在注册的时候给一个admin参数。
登录的时候,会发现当前用户的admin参数变为了true,可以打开Admin Area
。
五、Information Disclosure
可以尝试闭合"
,payload:111"x
六、Command Injection
看到api接口中出现linux命令后,可以尝试执行linux命令;ls