XXE(外部实体注入)

2023-11-06

写在前面

这个系列开始写写XXE相关的东西,这里是第一部分,相关资料及使用靶场如下:

XML学习

靶场链接

XXE是以XML为基础进行的一种攻击,所以你需要先学习XML。
为了更方便你检索题目且由于是国外网站,会带有一定外语及翻译。最后,如果你访问过慢,可以设置上游代理来进行bp抓包(自行搜索)。开始吧

Exploiting XXE using external entities to retrieve files(利用外部实体XXE来检索文件)

打开环境

在这里插入图片描述
是一个商店页面的模拟,先找找可疑的点吧,点进商品
在这里插入图片描述
下方有一个点,通过你选择的地区来查询存货数量,检查发现是通过前端的选择框(value值)来决定,而前端是我们可以任意修改的,注入点就出现了。
并且是服务器请求库存数量,权限很高,抓出这个查询请求
在这里插入图片描述
是以xml格式进行请求,那我们能做的就很多了。后端有东西要来解析这个XML,尝试注入
这两个参数非常好理解,第一个代表商品id,第二个是仓库id
经测试,第一个参数会报错:
在这里插入图片描述
会对productId参数返回解析结果。
这里的利用思路就是,执行命令并返回给一个变量,将这个变量放在productId位置,返回出敏感信息,带内注入即可
payload:

<!DOCTYPE test [ <!ENTITY xxe SYSTEM "file:///etc/passwd"> ]>

在这里插入图片描述
来分析一下,使用DOCTYPE引入外部实体,定义变量就是这样做的,类似键值对嵌套这样来工作的,第一参数是名字,值就是中括号里的,而在中括号中可以引入多个外部实体(ENTITY),比如这个:

<!DOCTYPE note [
<!ENTITY nbsp "&#xA0;">
<!ENTITY writer "Writer: Donald Duck.">
<!ENTITY copyright "Copyright: W3Schools.">
]>

就是定义了好几个外部实体变量,这里的payload就是执行SYSTEM函数,然后将结果返回给xxe这个变量
最后回显时,带上取地址符号和分号就可以使用这个变量了。
这种攻击方式是由于引入外部实体带来的,可以像文件包含一样理解。

Exploiting XXE to perform SSRF attacks (利用XXE执行SSRF攻击)

首先探测是否有回显
在这里插入图片描述
这里,有必要对题目场景进行说明

This lab has a “Check stock” feature that parses XML input and returns any unexpected values in the response.
The lab server is running a (simulated) EC2 metadata endpoint at the default URL, which is http://169.254.169.254/. This endpoint can be used to retrieve data about the instance, some of which might be sensitive.
To solve the lab, exploit the XXE vulnerability to perform an SSRF attack that obtains the server’s IAM secret access key from the EC2 metadata endpoint.
此实验室具有“检查库存”功能,可解析 XML 输入并在响应中返回任何意外值。
实验室服务器在默认 URL 上运行(模拟的)EC2 元数据端点,即http://169.254.169.254/. 此端点可用于检索有关实例的数据,其中一些可能是敏感的。
为了解决实验室问题,利用XXE漏洞执行SSRF 攻击,从 EC2 元数据端点获取服务器的 IAM 秘密访问密钥。

如果你熟悉vps如何调用主机资源,对这类SSRF攻击应该不会陌生。
这里的EC2指的是
在这里插入图片描述
“元数据”指的是关键后端资源,大致可以理解为实例化出来的vps调用后端资源的地方
由于可以获得访问密钥,对于云安全是非常大的威胁,这里不展开说,如果你想细致了解,以下是学习链接
拓展链接

向关键位置发起请求
在这里插入图片描述
SSRF探测成功,一直向下检索,得到敏感信息
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

XXE(外部实体注入) 的相关文章

  • 网络空间安全女生就业,怎么学?

    我实验室的学长们基本都是以红队和复现为主 如果学校好点可能还有更多的选择 如果想在这个方向深入下去 推荐流程是先打两年CTF 把大概的技术方向摸一摸 大一的话 如果学校还不错 那就优先建议打好基础 包括C语言 Python一类 建议把CTF
  • CTF之逆向入门

    逆向工程 Reverse Engineering 又称反向工程 是一种技术过程 即对一项目标产品进行逆向分析及研究 从而演绎并得出该产品的处理流程 组织结构 功能性能规格等设计要素 以制作出功能相近 但又不完全一样的产品 逆向工程源于商业及
  • 软件开发和网络安全哪个更好找工作?

    为什么今年应届毕业生找工作这么难 有时间去看看张雪峰今年为什么这么火就明白了 这么多年人才供给和需求错配的问题 在经济下行的今年 集中爆发 供给端 大学生越来越多 需求端 低端工作大家不愿去 高端岗位又太少 很多基础行业 比如机械 土木 所
  • The Planets:Venus

    靶场下载 The Planets Venus VulnHub 信息收集 arp scan l Interface eth0 type EN10MB MAC 00 0c 29 43 7c b1 IPv4 192 168 1 60 Starti
  • SpiderFlow爬虫平台 前台RCE漏洞复现(CVE-2024-0195)

    0x01 产品简介 SpiderFlow是新一代爬虫平台 以图形化方式定义爬虫流程 以流程图的方式定义爬虫 不写代码即可完成爬虫 是一个高度灵活可配置的爬虫平台 0x02 漏洞概述 SpiderFlow爬虫平台src main java o
  • 掌握内网渗透之道,成为实战高手,看《内网渗透实战攻略》就够了

    文末送书 文末送书 今天推荐一本网络安全领域优质书籍 内网渗透实战攻略 文章目录 前言 如何阅读本书 目录 文末送书 前言 当今 网络系统面临着越来越严峻的安全挑战 在众多的安全挑战中 一种有组织 有特定目标 长时间持续的新型网络攻击日益猖
  • 【CTF必看】从零开始的CTF学习路线(超详细),让你从小白进阶成大神!

    最近很多朋友在后台私信我 问应该怎么入门CTF 个人认为入门CTF之前大家应该先了解到底 什么是CTF 而你 学CTF的目的又到底是什么 其次便是最好具备相应的编程能力 若是完全不具备这些能力极有可能直接被劝退 毕竟比赛的时候动不动写个脚本
  • Web 安全漏洞之 OS 命令注入

    什么是 OS 命令注入 上周我们分享了一篇 Web 安全漏洞之 SQL 注入 其原理简单来说就是因为 SQL 是一种结构化字符串语言 攻击者利用可以随意构造语句的漏洞构造了开发者意料之外的语句 而今天要讲的 OS 命令注入其实原理和 SQL
  • 线程安全(中)--彻底搞懂synchronized(从偏向锁到重量级锁)

    接触过线程安全的同学想必都使用过synchronized这个关键字 在java同步代码快中 synchronized的使用方式无非有两个 通过对一个对象进行加锁来实现同步 如下面代码 synchronized lockObject 代码 对
  • 前端必备的 web 安全知识手记

    前言 安全这种东西就是不发生则已 一发生则惊人 作为前端 平时对这方面的知识没啥研究 最近了解了下 特此沉淀 文章内容包括以下几个典型的 web 安全知识点 XSS CSRF 点击劫持 SQL 注入和上传问题等 下文以小王代指攻击者 话不多
  • 2024年金三银四网络安全考试试题

    2023年金三银四网络安全考试试题 1 关于数据使用说法错误的是 A 在知识分享 案例中如涉及客户网络数据 应取敏感化 不得直接使用 B 在公开场合 公共媒体等谈论 传播或发布客户网络中的数据 需获得客户书面授权或取敏感化 公开渠道获得的除
  • Android SDK开发艺术探索(五)安全与校验

    一 前言 本篇是Android SDK开发艺术探索系列的第五篇文章 介绍了一些SDK开发中安全方面的知识 包括资源完整性 存储安全 权限校验 传输安全 代码混淆等知识 通过基础的安全配置为SDK保驾护航 探索SDK开发在安全方面的最佳实践
  • 「网络安全渗透」如果你还不懂CSRF?这一篇让你彻底掌握

    1 什么是 CSRF 面试的时候的著名问题 谈一谈你对 CSRF 与 SSRF 区别的看法 这个问题 如果我们用非常通俗的语言讲的话 CSRF 更像是钓鱼的举动 是用户攻击用户的 而对于 SSRF 来说 是由服务器发出请求 用户 日 服务器
  • 通俗易懂,十分钟读懂DES,详解DES加密算法原理,DES攻击手段以及3DES原理

    文章目录 1 什么是DES 2 DES的基本概念 3 DES的加密流程 4 DES算法步骤详解 4 1 初始置换 Initial Permutation IP置换 4 2 加密轮次 4 3 F轮函数 4 3 1 拓展R到48位 4 3 2
  • 远程控制软件安全吗?一文看懂ToDesk、RayLink、TeamViewer、Splashtop相关安全机制_raylink todesk

    目录 一 前言 二 远程控制中的安全威胁 三 国内外远控软件安全机制 ToDesk RayLink Teamviewer Splashtop 四 安全远控预防 一 前言 近期 远程控制话题再一次引起关注 据相关新闻报道 不少不法分子利用远程
  • 小白入门黑客之渗透测试(超详细)基本流程(内附工具)

    经常会收到小伙伴们这样的私信 为什么我总是挖不到漏洞呢 渗透到底是什么样的流程呢 所以全网最详细的渗透测试流程来了 渗透测试其实就是通过一些手段来找到网站 APP 网络服务 软件 服务器等网络设备和应用的漏洞 告诉管理员有哪些漏洞 怎么填补
  • 网络安全(黑客)自学

    1 网络安全是什么 网络安全可以基于攻击和防御视角来分类 我们经常听到的 红队 渗透测试 等就是研究攻击技术 而 蓝队 安全运营 安全运维 则研究防御技术 2 网络安全市场 一 是市场需求量高 二 则是发展相对成熟入门比较容易 3 所需要的
  • 网络安全基础知识面试题库

    1 基于路由器的攻击手段 1 1 源IP地址欺骗式攻击 入侵者从外部传输一个伪装成来自内部主机的数据包 数据包的IP是 内网的合法IP 对策 丢弃所有来自路由器外端口 却使用内部源地址的数据包 1 2 源路由攻击 入侵者让数据包循着一个不可
  • 为什么我强烈推荐大学生打CTF!

    前言 写这个文章是因为我很多粉丝都是学生 经常有人问 感觉大一第一个学期忙忙碌碌的过去了 啥都会一点 但是自己很难系统的学习到整个知识体系 很迷茫 想知道要如何高效学习 这篇文章我主要就围绕两点 减少那些罗里吧嗦的废话 直接上干货 CTF如
  • 【安全】简单解析统一身份认证:介绍、原理和实现方法

    深入解析统一身份认证 介绍 原理和实现方法 导语 统一身份认证是什么 统一身份认证的原理 统一身份认证的实现 结语 导语 随着互联网的发展和各种在线服务的普及 用户在不同的应用和平台上需要进行多次身份验证 为了简化用户的登录和减少重复操作

随机推荐

  • 基于遗传算法的多目标优化算法(matlab实现)

    1 理论基础 1 1 多目标优化及Pareto最优解 多目标优化问题可以描述如下 其中 f x 为待优化的目标函数 x为待优化的变量 Ib和ub分别为变量x的下限和上限约束 Aeq x beq为变量x的线性等式约束 A x b为变量x的线性
  • HBuilder X3.1.22安装教程(非常详细)从零基础入门到精通,看完这一篇就够了(附安装包)

    软件下载 软件 HBuilder X 版本 3 1 22 语言 简体中文 大小 278 95M 安装环境 Win11 Win10 Win8 Win7 硬件要求 CPU 2 0GHz 内存 4G 或更高 下载通道 百度网盘丨下载链接 http
  • RPA机器人流程适用性评估的9个要素

    组织通常可以从以下几个方面来考虑RPA机器人流程的筛选 确保在RPA机器人流程自动化过程中产生最大投资回报率 ROI 如何去选择有影响力且易于RPA机器人自动化的流程 1 影响成本和收入的流程 最具影响力的流程 例如 如果定价规则不明确 报
  • 17. 实战:手把手通关某音乐平台热门评论

    目录 前言 链接在评论区 目的 保姆级思路 最后奉上完整代码 运行效果 前言 众所周知 某音乐平台的评论区金句频出 热门评论更是美不胜收 我们也想要批量获取这些信息来做信息分析 数据处理等工作 也可以陶冶自己的情操 一举多得 所以我们今天来
  • 蓝以中老师《高等代数》第02章:向量空间与矩阵,笔记

    蓝以中高代第二章笔记
  • Android开源图表库MPAndroidChart

    MPAndroidChart是一款基于Android的开源图表库 MPAndroidChart不仅可以在Android设备上绘制各种统计图表 而且可以对图表进行拖动和缩放操作 应用起来非常灵活 和前面介绍的AChartEngine相比 MP
  • AutoSAR 学习笔记2:AutoSAR架构

    1 应用层 ASW 2 运行时环境层 RTE RTE 是专门为应用软件 AutoSAR 软件组件和 或 AutoSAR 传感器 执行器组件 提供通信服务的层 在 RTE 之上 软件架构风格从 分层 转变为 组件风格 AutoSAR 软件组件
  • 模板模式

    1 模板模式的概念 在模板模式 Template Pattern 中 一个抽象类公开定义了执行它的方法的方式 模板 它的子类可以按需要重写方法实现 但调用将以抽象类中定义的方式进行 这种类型的设计模式属于行为型模式 2 模板模式的特点 子类
  • 从煎鸡蛋的角度理解编程的思维和流程,你适合学吗?

    其实很多门外人对编程都是懵懵懂懂的 我们可以先看一张图来理解一下 思维 就是程序员需要考虑到的各种需求 也就是我们想让计算机帮助我们实现什么 表达 就是计算机可以看懂的指令也就是0和1 那怎么将我们所想向计算机说出来 并且让它帮我们执行 就
  • server2008r2域控时间设置internet时间同步(备忘)

    windows server 2008 r2成为域控后 时间设置里的 internet时间就没有了 为了解决这个问题 用以下CMD命令可解决 w32tm config manualpeerlist time windows com sync
  • iOS 应用获取最上层全屏 Window 的正确方法

    有时候 我们需要将View添加到最上层的Window上 比如 弹出框 Loading等 经常有同学直接通过 UIApplication sharedApplication windows lastObject 来获取 这种方法是非常不严谨的
  • leetcode----JavaScript 详情题解(4)

    目录 2722 根据 ID 合并两个数组 2723 添加两个 Promise 对象 2724 排序方式 2725 间隔取消 2726 使用方法链的计算器 2727 判断对象是否为空 2624 蜗牛排序 2694 事件发射器 2722 根据
  • 集成支付宝报错订单信息有错误,建议联系实家。 错误码: TOTAL FEE EXCEED

    问题 集成支付宝报错 订单信息有错误 建议联系实家 错误码 TOTAL FEE EXCEED 详细问题 笔者按照支付宝沙箱支付快速集成版进行操作 操作完成访问所集成的支付宝 页面如下 发起请求核心代码 response sendRedire
  • ubuntu(20.04)-shell脚本(4)-vmstat-iostat-expr-netstat-arp-Tracert-Route-NBTStat

    vmstat 好iostat 两个命令都适用于所有主要的类unix系统 linux的软件包 都在sysstat软件包中 1 vmstat iostat 基本语法 每列的意义 常用的 Free 空闲的内存空间 si 每秒从磁盘中交换进内存的数
  • 项目问题总结

    1 android studio 导入开源项目源码时要注意与自己包的冲突 比如 你有一个com xxxx的包 而需要导入的是com xx yy 你就不能把整个包复制过来 否则会报can t resolve symbil 因为它根据com会到
  • 虚幻4常见问题

    问题1 问题描述 UE4找不到游戏模块 UE4 the game module fps could not be found 解决方案 重新编译一遍C 项目 通过C 项目启动UE4生成游戏模块 为了防止生成失效可以启动uproject文件再
  • 数组是分配在栈中的

    关于JAVA堆 下面说法错误的是 正确答案 C 你的答案 B 错误 所有类的实例和数组都是在堆上分配内存的 堆内存由存活和死亡的对象 空闲碎片区组成 数组是分配在栈中的 对象所占的堆内存是由自动内存管理系统回收 JVM 关于堆和栈 Java
  • Java 数据转换/进制转换 工具类

    public class ByteUtil 十六进制转为十进制 public static String getHexToTen String hex return String valueOf Integer parseInt hex 1
  • Contact Form 7 获取用户IP和留言url,发布时间

    提交询盘时间 date time 客户访问IP a href remote ip a 点击打开可看到ip所属国家 客户访问产品 url 客户访问日期 date 客户访问者有没有facebook a href your email a
  • XXE(外部实体注入)

    写在前面 这个系列开始写写XXE相关的东西 这里是第一部分 相关资料及使用靶场如下 XML学习 靶场链接 XXE是以XML为基础进行的一种攻击 所以你需要先学习XML 为了更方便你检索题目且由于是国外网站 会带有一定外语及翻译 最后 如果你