| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 系统运维 -> XXE(外部实体注入)| PortSwigger(burpsuite官方靶场)| Part 3 -> 正文阅读 |
|
[系统运维]XXE(外部实体注入)| PortSwigger(burpsuite官方靶场)| Part 3 |
写在前面关于XXE的前置知识,引用和备注,请看Part 1 XInclude attacks
首先解释一下SOAP:
简单来说,Soap请求就是向服务器传递xml数据,服务器向客户端也返回xml数据 对于XInclude,其实就是xmlns命名空间声明的一个前缀,而这个前缀是w3c官方规定的前缀,当你写出 简单来说,XInclude 处理发生在低级别,通常由通用 XInclude 处理器进行,该处理器使结果信息集可用于更高级别的应用程序。就是一个简单的引入,当你声明这个命名空间后,随后就可以进行引入了。 第二个它提供了一种从丢失资源中恢复的机制。当遇到资源错误时,将xi:include元素替换为xi:fallback元素的内容。这里不细说了
XXE attacks via file upload
首先SVG,它是基于XML,由World Wide Web Consortium(W3C)联盟进行开发的。严格来说应该是一种开放标准的矢量图形语言,可让你设计激动人心的、高分辨率的Web图形页面。用户可以直接用代码来描绘图像,可以用任何文字处理工具打开SVG图像,通过改变部分代码来使图像具有交互功能,并可以随时插入到HTML中通过浏览器来观看。 也就是,你可以使用代码来绘制图形,在图形的处理上是非常方便的,同时浏览起来和兼容性都非常舒服。
简单分析一下。首先如果你要画普通的SVG图像,使用
但是普通的图像肯定不能获取敏感信息,这里需要使用xlink,这里是通过外部实体来搜索敏感文件。前面说过了,就不再赘述,值得注意的是,由于这个不是嵌在html中的,并不能直接使用svg标签,所以里面有一个svg命名空间声明。 XXE attacks via modified content type官方已经说的非常清楚,引用一下
如果应用程序容忍消息正文中包含 XML 的请求,并将正文内容解析为 XML,那么您只需将请求重新格式化为使用 XML 格式即可到达隐藏的 XXE 攻击面。 查找与测试XXE如果可以控制XML,首先就是外部实体注入测试。 防止XXE几乎所有 XXE 漏洞的出现都是因为应用程序的 XML 解析库支持应用程序不需要或不打算使用的潜在危险 XML 功能。防止 XXE 攻击的最简单和最有效的方法是禁用这些功能。 通常,禁用外部实体的解析并禁用对XInclude. 这通常可以通过配置选项或以编程方式覆盖默认行为来完成。有关如何禁用不必要功能的详细信息,请参阅 XML 解析库或 API 的文档。 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/16 3:21:54- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |