常见漏洞丨XXE
本文章提供的网络安全技术信息仅用于教育和研究目的,读者在使用这些技术时应自行承担责任。作者不对读者在使用这些技术时可能引发的后果承担责任。
一、XXE漏洞简介
XML 外部实体注入(也称为 XXE)是一种 Web 安全漏洞,允许攻击者干扰应用程序对 XML 数据的处理。它通常允许攻击者查看应用程序服务器文件系统上的文件,并与应用程序本身可以访问的任何后端或外部系统进行交互。
在某些情况下,攻击者可以利用 XXE 漏洞联合执行服务器端请求伪造(SSRF) 攻击,从而提高 XXE 攻击等级以破坏底层服务器或其他后端基础设施。
二、XXE漏洞原理
攻击者通过向服务器注入指定的XML实体内容,从而让服务器按照指定的配置进行执行,从而导致漏洞的产生。即服务器端没有对用户上传的xml数据进行检查控制,导致用户提交的恶意XML被解析。
**
**
三、XXE的防御
**
**
1、使用开发语言提供的禁用外部实体的方法
2、过滤用户提交的XML数据
3、不允许XML中含有自己定义的DTD
**
**
四、XXE漏洞演练
**注意:
**
1、打开pikachu靶场,点击XXE漏洞,根据提示,写入到输入框中的内容,会被进行xml解析,将下面代码写入框中点击提交
<?xml version="1.0"?> <!DOCTYPE note[ <!ENTITY example "这是一个内部实体"> ]> <name>&example;</name>
2、点击提交后,会显示“这是一个内部实体”,
显示出此内容,说明,我们定义的内部实体example已经被成功解析
**
**
3、重新构建xml文件,将DTD实体变为外部实体,代码如下:
<?xml version="1.0"?> <!DOCTYPE ANY[ <!ENTITY file SYSTEM "file:///F://example.ini"> ]>
<x>&file;</x>
将xml代码写入提交后,出现如上图所示内容,表明外部实体已经被成功解析,此代码定义的外部实体为本机某盘下的模拟配置文件,实际攻击中将直接获取网站服务器中重要的敏感数据。
学习计划安排
这里我整合并且整理成了一份【282G】的网络安全从零基础入门到进阶资料包,需要的小伙伴可以扫描下方优快云官方合作二维码免费领取哦,无偿分享!!!
如果你对网络安全入门感兴趣,那么你需要的话可以
点击这里👉网络安全重磅福利:入门&进阶全套282G学习资源包免费分享!
①网络安全学习路线
②上百份渗透测试电子书
③安全攻防357页笔记
④50份安全攻防面试指南
⑤安全红队渗透工具包
⑥HW护网行动经验总结
⑦100个漏洞实战案例
⑧安全大厂内部视频资源
⑨历年CTF夺旗赛题解析
