0%


title:XXE漏洞

1.攻击脚本

]>

&xxe;

%dtd;

]>

**注意实体引用后标上‘;’!!!**当引用一个实体时,分号表示实体引用的结束

“>

2.外部实体

“>
%all;
%send;

参数实体all的嵌套:

参数实体%file%send 的声明在同一 DTD 声明块中,属于同一层级。但XML 解析不会解析同一层级的参数

为什么要引用外部实体

在 DTD 的内部子集中,有一个规则限制,即不允许在标记声明里引用参数实体(PEReferences forbidden in internal subset in Entity)

&#x25

在 DTD 中,%号是参数实体的起始标志,有特殊用途。当在特定 DTD 声明语句中直接使用%号时,解析器会将其按参数实体引用的语法规则处理。但如果该%号所处位置或上下文不符合参数实体引用的规范,解析器就无法正确解析,从而报错get.php?file=%file;’>”>