XXE漏洞:易被忽视但危害巨大!

  • A+
所属分类:安全文章

XXE漏洞:易被忽视但危害巨大!XXE漏洞:易被忽视但危害巨大!



讲师简介




昵称:小天之天,补天审核工程师。


专注coding、渗透测试和Java Web安全研究。



课程介绍




在本门课程中小天讲师首先介绍了XML基础,包括XXE漏洞原理、XML文档与DTD文档、内外部DTD结合文档、XML实体、以及XXE漏洞的危害会影响的范围。其次对Blind XXE漏洞进行复现,最后给出了Java版的漏洞修复策略以及有效的防范措施。


通过这门课程学习们可以了解到全面的XXE漏洞知识,还有XML与DTD之间的关系,以及如何挖掘并验证XXE漏洞。


感兴趣的小伙伴,识别二维码立即看课

XXE漏洞:易被忽视但危害巨大!

XXE漏洞:易被忽视但危害巨大!

PS:Web端看课体验更佳,看课地址:

https://www.ichunqiu.com/open/58939

XXE漏洞:易被忽视但危害巨大!

课程概况


XXE漏洞:易被忽视但危害巨大!


漏洞概念


XXE Injection(XML External Entity Injection),它是一种隐蔽并且经常被忽视的漏洞,它可以利用XML外部实体加载注入,执行不可预控的代码。


什么是XML?


XML是一种用来传输和存储数据的可扩展标记语言。


  • XML用于传输和数据存储;


  • HTML用于显示数据。


XML文档结构包括XML声明、DTD文档类型定义(可选)、文档元素。


<!--XML声明--><?xml version="1.0"?><!--文档类型定义--><!DOCTYPE note [ <!--定义此文档是 note 类型的文档--><!ELEMENT note (to,from,heading,body)> <!--定义note元素有四个元素--><!ELEMENT to (#PCDATA)> <!--定义to元素为”#PCDATA”类型--><!ELEMENT from (#PCDATA)> <!--定义from元素为”#PCDATA”类型--><!ELEMENT head (#PCDATA)> <!--定义head元素为”#PCDATA”类型--><!ELEMENT body (#PCDATA)> <!--定义body元素为”#PCDATA”类型-->]]]><!--文档元素--><note><to>Dave</to><from>Tom</from><head>Reminder</head><body>You are a good man</body></note>


如何发现漏洞


寻找XML输入点,比如Content-Type:text/xml,post的数据包含XML格式,如:

<forgot><username>admin</username></forgot>请求头中添加Content-Type:text/xml,或Content-type:application/xml。


同时,POST中添加payload:


XXE漏洞:易被忽视但危害巨大!


file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtmlclip1/01/clip_image016.gif


漏洞危害


1、任意文件读取


XXE漏洞:易被忽视但危害巨大!

file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtmlclip1/01/clip_image017.gif

<?xml version="1.0"encoding="utf-8"?>        <!DOCTYPE test [        <!ENTITY xxe SYSTEM"file:///etc/passwd">]>        <test>        <wsw>&xxe;</wsw>        </test>

通过提交自动以URI,可以读取任意文件(本地或远程)。


还可以通过DTD文档引入外部DTD文档,再引入外部实体声明,如下:


XXE漏洞:易被忽视但危害巨大!

file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtmlclip1/01/clip_image019.gif


以上输入有回显的情况,/etc/passwd可以直接被显示出来,无回显的情况,需要把文件外发至远程服务器,具体如下:


XXE漏洞:易被忽视但危害巨大!


file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtmlclip1/01/clip_image021.gif


2、拒绝服务


原理为:构造恶意的XML实体文件耗尽可用内存,因为许多XML解析器在解析XML文档时倾向于将它的整个结构保留在内存中,解析非常慢,造成了拒绝服务。


XXE漏洞:易被忽视但危害巨大!


file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtmlclip1/01/clip_image023.gif


3、测试后端服务器的开放端口


file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtmlclip1/01/clip_image025.gif


通过返回的“Connection refused”可以知道该81端口是closed的,而80端口是open的。


XXE漏洞:易被忽视但危害巨大!


4、后端Web漏洞如果可以通过URL加以利用,可造成Web漏洞安全隐患。


XXE漏洞:易被忽视但危害巨大!


file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtmlclip1/01/clip_image027.gif


5、命令执行


XXE漏洞:易被忽视但危害巨大!

file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtmlclip1/01/clip_image029.gif


PHP要开启PECL上的Expect扩展。


XXE漏洞:易被忽视但危害巨大!

End


— 往期回顾 —

技术交流会

 渗透测试:情报收集

 代码审计实操

 SSRF漏洞防御措施

 浅析勒索病毒

 JAVA反序列化学习

 回首白帽老兵十年网安之路

 通读Linux提权原理和手法

 浅析红队基础设施

 Windows域渗透之Kerberos委派


安全小科普

cookie是什么

浅析威胁情报

浅析僵尸网络

信用卡安全

大数据的前世今生

大牛教你做好应急响应

免费的陷阱:警惕公共Wi-Fi

无线键盘有漏洞

0day危机,隐藏的攻防战

加密算法解析

DNS解析

▶ 红队建设之道

▶ 手机锁屏密码安全

▶ 中间人攻击

▶ 十分钟看懂隐写术

▶ 信息泄露问题

▶ 狡猾的漏洞利用

▶ RFID工作原理分析

▶ 披露世界顶级黑客的内心独白

▶ 一分钟看穿网络钓鱼


DC GROUP精品沙龙系列

 VPN设备的矛与盾

 CAN总线安全

▶ Windows 密码攻防

▶ 基于攻击链的威胁,工控安全如何防护

▶ 初窥IoT安全 浅析常规漏洞


力荐丨渗透测试就业班


XXE漏洞:易被忽视但危害巨大!


XXE漏洞:易被忽视但危害巨大!

i春秋官方公众号为大家提供

前沿的网络安全技术

简单易懂的实用工具

紧张刺激的安全竞赛

还有网络安全大讲堂

更多技能等你来解锁

XXE漏洞:易被忽视但危害巨大!


XXE漏洞:易被忽视但危害巨大!

本文始发于微信公众号(i春秋):XXE漏洞:易被忽视但危害巨大!

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: