博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
XXE漏洞
阅读量:6115 次
发布时间:2019-06-21

本文共 1822 字,大约阅读时间需要 6 分钟。

目录

本文只是对XXE漏洞学习,参考多篇文章

一、XML基础

​ XML 用于编辑电子文件使其具有结构性的标记语言,可以用来标记数据、定义数据,是一种允许用户的对自己的标记语言进行定义的源语言。XML文档结构包括XML声明、DTD文档类型定义、文档元素。

George
John
Reminder
11111

因为只为学习漏洞,不对xml进行详细学习。

可以在此查看详细内容

而XXE漏洞相关的则为DTD

DTD

​ DTD 文档类型定义,可定义合法的XML文档构建模块。它使用一系列合法的元素来定义文档的结构。

​ DTD可以成行地声明XML文档中,也可以作为一个外部引用。
1. 内部声明DTD

假如DTD 被包含在XML源文件中,应当通过下面的语法包装在一个DOCTYPE声明中

 
]>
George
John
Reminder
1111

2. 引用外部

假如DTD 位于XML源文件外部,那么应该通过下面的语言被封装在一个DOCTYOE定义中
<!DOCTYPE> 根元素 SYSTEM “文件名”>
与上 面内部声明 xml文件差不多,但是拥有一个外部的DTD

George
John
Reminder
Don't forget the meeting!

包含DTD的 note.dtd 文件

3. 其中还有一种应用的格式为

 

DTD -实体

实体是用于定义引用普通文本或特殊字符的快捷方式的变量。实体引用是对(实体)的引用。(实体)可以在内部或者外部进行声明

1. 内部实体声明

如:

&writer;&copyright;

注释: 一个实体由三部分构成: 一个和号 (&), 一个实体名称, 以及一个分号 (;)。

2. 一个外部实体声明

如:

&writer;&copyright;

XML实体分为 普通实体和参数实体 。上面介绍的为普通实体 使用场合则为XML文档中

1275908-20190218155152953-922227908.png

二、XML外部实体注入(XML External Entity XEE)

​ 当允许引用外部实体时候,通过构造恶意内容,可导致读取任意文件、执行系统命令、探测内网端口等危害。

有回显读取本地敏感文件

普通实体引用外部实体

服务器 xml.php

loadXML($xmlfile, LIBXML_NOENT | LIBXML_DTDLOAD); $creds = simplexml_import_dom($dom); echo $creds;?>

payload

]>
&goodies;

1275908-20190218155251782-1503904873.png

参数实体引用外部实体

%a;]>
&xxe;

无回显读取本地的敏感文件

​ 可以看到在上面两个实验中,都是有显示,而另外一种情况无回显

服务端 xml.php

loadXML($xmlfile, LIBXML_NOENT | LIBXML_DTDLOAD); ?>

1.dtd

">

Payload

%remote;%int;%send;]>

利用

在上面当中一直使用的为 file 协议 。在真实情况中应该清楚为什么平台,能够使用什么协议。

1275908-20190218155438445-755561132.png

三、总结

可以看出 XXE 漏洞,知识点涉及较多内容。如 其它利用 危害 Dos拒绝服务、内网主机探测 、内网主机端口扫描。 由于内容较多 之后在一一更新补充。

参考链接

转载于:https://www.cnblogs.com/0x516A/p/10396017.html

你可能感兴趣的文章
[转]用Mochiweb打造百万级Comet应用,第三部分
查看>>
初级程序员的学习方法见解
查看>>
swap配置小结
查看>>
[原创]FineUI秘密花园(八) — 下拉列表控件
查看>>
让你的Rt.jar能够包含元信息
查看>>
单元测试(H2等)和持续集成(Hudson)实战简介
查看>>
CSS小技巧二:导航中鼠标经过变换文字
查看>>
Android 读取文件内容
查看>>
C#方法参数传递-引用参数ref关键字
查看>>
【英语天天读】活在当下
查看>>
E-R图向关系模型的转换规则
查看>>
js正则表达式(不断总结中....)
查看>>
动态规划练习 9
查看>>
DP动态规划——hdu 1008 Common Subsequence(最长公共子序列)
查看>>
Directx11教程(61) tessellation学习(3)
查看>>
几种不同方式将用户照片导入到AD
查看>>
Microsoft 技术路线发展的思考
查看>>
Minesweeper(暴力,注意特判)
查看>>
WPF 顺序选择按钮
查看>>
HDU 4268 Alice and Bob (set)
查看>>