XXE漏洞详解(二)——DTD基础

简介: XXE漏洞详解(二)——DTD基础

今天继续给大家介绍渗透测试相关知识,本文主要内容是XXE漏洞详解(二)——DTD基础。

免责声明:
本文所介绍的内容仅做学习交流使用,严禁利用文中技术进行非法行为,否则造成一切严重后果自负!
再次强调:严禁对未授权设备进行渗透测试!

一、DTD简介和用法
DTD,即Document Type Definition,文档类型定义的简称,是一种精确描述XML语言的方式。DTD根据XML语言的语法规则检查XML文档结构的词汇和有效性。DTD主要用于保证XML文档格式正确,我们可以通过比较XML文档和DTD文件来看文档是否合乎规范,元素和标签使用是否正确。
我们可以在XML文档中指定DTD,即内部DTD。也可以将DTD保存在单独的文档中,然后单独添加,这样即外部DTD。

二、内部DTD使用
内部DTD指的是直接在XML文档中声明元素,这时需要在XML的头部声明中添加属性standalone,并将该属性的值设置为"yes"。
内部DTD使用语法如下所示:

<!DOCTYPE root-element
[
element-declarations
]>
1
2
3
4
一个内部DTD格式如下所示:

<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<!DOCTYPE person [
<!ELEMENT person (name,age,address,country,major)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT age (#PCDATA)>
<!ELEMENT address (#PCDATA)>
<!ELEMENT country (#PCDATA)>
<!ELEMENT major (#PCDATA)>
]>


Bob
24
1-1-110
China
History

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
其中

<!ELEMENT person (name,age,address,country,major)>
1
定义了person根节点下面存在name、age等属性。

<!ELEMENT name (#PCDATA)>
1
则定义了name属性的类型是(#PCDATA)。

三、外部DTD使用
外部DTD元素定义在XML文档之外,可以是合法的.dtd文件,也可以是有效的URL。如果要引用外部DTD,那么在XML的头部声明中,需要设置standalone属性为"no"。
外部DTD声明语法为:

<!ENTITY element SYSTEM "xxx.dtd|http://…………">
1
例如:

<!ENTITY element1 SYSTEM "filename.dtd">
<!ENTITY element2 SYSTEM "http://www.exp.com/exp.dtd">
1
2
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200
————————————————

                        版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文链接:https://blog.csdn.net/weixin_40228200/article/details/128412513

目录
相关文章
|
XML SQL Web App开发
用友 GRP-U8 Proxy XXE-SQL注入漏洞
用友 GRP-U8 Proxy XXE-SQL注入漏洞,攻击者可利用该漏洞获取数据库敏感信息,具体复现操作请看下文。
347 1
|
2月前
|
XML 安全 网络安全
XXE漏洞详解(一)——XML基础
XXE漏洞详解(一)——XML基础
29 1
|
Java
Struts2 Xss 攻击预防的处理
关于XSS问题的处理,此前在博客 http://blog.csdn.net/catoop/article/details/50338259 中写过处理方法。刚好最近朋友有问到“在Struts2中按文章中那样处理无效”,后来验证了下发现,Struts2 对请求的二次封装有所不同,于是针对Struts.
18714 0
|
1月前
|
XML JSON 安全
Web安全-XXE漏洞
Web安全-XXE漏洞
19 1
|
2月前
|
XML 安全 网络安全
XXE漏洞详解(三)——XXE漏洞实际运用
XXE漏洞详解(三)——XXE漏洞实际运用
127 4
|
5月前
|
安全 JavaScript Go
【Web】什么是 XSS 攻击,如何避免?
【Web】什么是 XSS 攻击,如何避免?
|
XML 存储 安全
WEB漏洞 XML & XXE漏洞
WEB漏洞 XML & XXE漏洞
|
XML 安全 Java
代码审计——XXE详解
代码审计——XXE详解
236 0
|
存储 前端开发 安全
Web 安全之 XSS 攻击
Web 安全之 XSS 攻击
410 0
|
XML 安全 网络协议
WEB常见漏洞之XXE(靶场篇)
WEB常见漏洞之XXE(靶场篇)
961 0