XML\XXE漏洞基本原理

前言

欢迎来到我的博客

个人主页:北岭敲键盘的荒漠猫-CSDN博客

本文整理XXE漏洞的相应信息

XML与XXE漏洞

这个东西有许多叫法,XML漏洞与XXE漏洞差不多都是一个东西。

这个漏洞是出现在XMl上的,然后可以叫他XXE注入漏洞。

XML简介

XML是一种数据的传输形式。

就是前端给后端,后端给前端传参数用的

通常我们post提交数据是这样的。

user=111&pass=222

还有一种是现在常用的json

{"login":[

{"user":"111","pass":"222"},

]}

然后就是我们的XML

XML 复制代码
<login id="1">
    <user>111</user>
    <pass>222</pass>
</login>

跟html有点类似,就是数据包里传给后端,然后后端从里面解析数据的一种方式。

漏洞产生原因

由于后端接收XML之后会进行解析,如果我们在XML中插入恶意代码的话,那么后端就会执行恶意代码被攻击。

判断是否采用xml传输

content-type判断

数据包中的content-type会标识传输的类型。

这里是json的(现在绝大多数网站都是json)。

如果对方是XML格式的话这里就是XML了。

数据类型判断

直接看传递的数据。

如果是上面XML那个样子的格式,那就是XML的。

基本攻击手法

就是利用XXE可以解析的特点执行恶意代码。

最主要的攻击手法是文件读取

XML 复制代码
<?xml version="1.0"?>
<!DOCTYPE xiaodi [
<!ENTITY test SYSTEM  "file:///d:/1.txt">
]>
<user><username>&test;</username><password>xiaodi</password></user>

案例演示

剩下的绕过思路与特殊玩法以及靶场攻略在别的博客中

别着急。。一个个写。。在写了在写了。。。到时候链接放过来。

特殊玩法与绕过思路

ctfshowXXE靶场全攻略

相关推荐
w67820071 天前
,攻击者通过构造特殊的XML使其包含恶意外部实体。外部实体可以为服务器敏感文件,也可以为网络请求等,之后利用方式类似于文件包含和SS ...
xml·服务器·网络
name好难取诶1 天前
解析请求体内容(如 JSON、表单数据、XML 等) 将原始数据转换为 Python 数据结构 使转换后的数据可在 request. ...
xml·python·json
qq_171538851 天前
深入浅出 MyBatis XML:从入门到精通
xml·java·mybatis
前网易架构师-高司机7 天前
带标注的扑克牌识别数据集,识别率99.5%,3083张图,支持yolo,coco json,voc xml,文末有模型训练代码
xml·yolo·json·数据集·数字·扑克牌·纸牌
执明wa8 天前
LayoutInflater详解: XML是如何变成View的?
android·xml·开发语言·android studio
IT_Octopus10 天前
一次由 RestTemplate 引发的 Connection reset:被 XML 截胡的请求体
xml·java·spring boot
Dontla10 天前
网站爬虫控制策略介绍(robots.txt、sitemap.xml、x-robots-tag、noindex、nofollow)网站索引
xml·爬虫·dubbo
风起洛阳@不良使11 天前
spring中xml和注解开发的对比
xml·java·spring
Mikowoo00712 天前
批量汇总XML格式的发票信息
xml·python
逃逸线LOF13 天前
xml文件如何加载properties文件(spring容器加载properties文件)
xml