Xxe注入:
XML是被设计用来存储以及传输信息,本身不会做任何事情。真正读取的是PHP有一个处理XML的函数:simplexml_load_string()。
在SYSTEM关键字通过file协议读取etc/passwd里面的内容赋值给test实体,&test引用实体赋值给了$test变量,这里所做的是构造xml代码,将xml代码传参给了simplexml_load_string()函数执行,真正的读取是在这个函数执行的,最后print_r输出。
没有simplexml_load_string()函数,是读取不出来的
我们可以先用file_put_contents()写入一些东西
然后网页访问该文件,利用id参数添加一些值到11.txt里面去
我们通过xxe注入可以查看到11.txt的内容
注意:一定要用post方法发送数据包
我们也可以通过这个方法利用一些伪协议去查看敏感文件
注意,无论访问的文件夹还是文件都必须拥有777权限