栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

网络安全之XXE漏洞

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

网络安全之XXE漏洞

XXE漏洞 1.XML基础知识

eXtensible Markup Language可扩展标记语言

用途

配置文件

 

交换数据

 

XML内容

xml声明

 

XML格式要求
  • XML文档必须有根元素

  • XML文档必须有关闭标签

  • XML标签对大小写敏感

  • XML元素必须被正确的嵌套

  • XML属性必须被加引号

XML格式校验

DTD(Document Type Definition)文档类型定义

DTD内容之元素

 

元素 ELEMENT

DTD内容之实体

 

实体 ENTITY

实体ENTITY的使用

 

内部实体

 

外部实体

 

外部实体引用:协议

协议使用方法
filefile:///etc//passwd
phpphp://filter/read=convert.base64encode/resource=index.php
http页面不存在_百度搜索

不同语言支持的协议

Libxml2PHPJava.NET
file , http, ftpfile, http, ftp, php, compress.zlib, compress.bzip2, data, glob, pharfile, http, https, ftp, jar, netdoc, mailto, gopher*file, http, https,ftp

PHP扩展

 

完整的XML内容

 

XML声明部分

文档类型定义

文档元素

2.什么是XXE

 

XML外部实体注入(XML External Entity Injection)

XXE定义

如果Web应用的脚本代码没有限制XML引入外部实体,从而导致用户可以插入一个外部实体,并且其中的内容会被服务器端执行,插入的代码可能导致任意文件读取,系统命令执行,内网端口探测,攻击内网网站等危害。

3.XXE利用方式

]>

盲打-http接口参数,写入文件

 

4.XXE防御 1.禁用外部实体

Java

DocumentBuilderFactory dbf
=DocumentBuilderFactory.newlnstance();
dbf.setExpandEntityReferences(false);
​
2.过滤用户提交的XML数据
'
“
"(two apostrophe)
""
<
>
]]>
]]>>

/-->
-->




我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号