NSSCTF-Web题目21(文件上传-phar协议、RCE-空格绕过)

news2025/1/11 7:04:36

目录

[NISACTF 2022]bingdundun~

1、题目

2、知识点

3、思路

[FSCTF 2023]细狗2.0

4、题目

5、知识点

6、思路


[NISACTF 2022]bingdundun~

1、题目

2、知识点

文件上传,phar伪协议

3、思路

点击upload,看看

这里提示我们可以上传图片或压缩包,且有一个参数

我们先按正常的思路,上传一个php文件、更改后缀名、大小写这些都不行

这里有一个思路,可以使用phar伪协议(phar://)

phar协议

Phar是PHP的归档格式,类似Java的JAR或是.NET的ZIP。Phar文件可以在不需要解压的情况下在PHP中运行。Phar文件可以用于分发PHP代码,就像你分发Python代码时使用的是.pyc或.whl文件。

Phar伪协议是PHP的一个特性,它允许直接从Phar归档中读取文件,而不需要将Phar文件解压。这样可以直接从Phar文件运行PHP脚本,而无需在服务器上物理地提取文件。

也就是说我们可以直接用phar伪协议读取服务器上的压缩包,而不需要先解压再读取

利用条件:1、php版本号在5.3之上 2、php.ini中phar.readonly= Off

抓包查看php版本

发现php版本为PHP/7.3.22

这里尝试使用phar://

把一句话木马压缩成压缩包,然后上传

然后访问zip中的文件,不需要带后缀名,我压缩包里面的文件为:flag.php

?bingdundun=phar://3104e5e6798c3292d8f507456d2aaee5.zip/flag

使用蚁剑连接

得到flag:NSSCTF{5f612c39-e631-4f1b-ad8e-90b728915970}


[FSCTF 2023]细狗2.0

4、题目

5、知识点

系统执行,空格绕过

6、思路

打开题目,是一道命令执行,先正常输入

加入系统命令ls

?hongzh0=1;ls / 

发现对空格进行了过滤

绕过空格过滤的方式:${IFS}$9 、{IFS} 、$IFS 、${IFS}、$IFS$1(其他数字也行,不一定要1)、IFS等

?hongzh0=1;ls$IFS$1/

然后对cat和flag都过滤了

在cat和flag加上\

?hongzh0=1;ca\t$IFS$2/fl\ag

得到flag:NSSCTF{8a00edec-ce65-41fe-8a75-de168053b9a0}


这篇文章就先写到这里了,哪里不懂的或者哪里不足的欢迎指出

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

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

相关文章

Nginx主配置文件---Nginx.conf

nginx主配置文件的模块介绍 全局块: 全局块是配置文件从开始到 events 块之间的部分,其中指令的作用域是 Nginx 服务器全局。主要指令包括: user:指定可以运行 Nginx 服务的用户和用户组,只能在全局块配置。例如&…

Linux多线程【线程互斥】

文章目录 Linux线程互斥进程线程间的互斥相关背景概念互斥量mutex模拟抢票代码 互斥量的接口初始化互斥量销毁互斥量互斥量加锁和解锁改进模拟抢票代码(加锁)小结对锁封装 lockGuard.hpp 互斥量实现原理探究可重入VS线程安全概念常见的线程不安全的情况常…

【开发环境】MacBook M系列芯片环境下搭建完整Python开发环境

文章目录 Anaconda和Python的关系?1. Python2. Anaconda 安装AnacondaPycharm整合Anaconda运行你的Python代码 Anaconda和Python的关系? 如果有简单了解过Python语言的,那么你很容易就会听到有人会叫你安装Anaconda。 那么Anaconda是什么&am…

编译原理2

推导和短语 推导 推导过程中,每一步推导都是对句型的 最右非终结符 进行替换,最右推导(规范推导); 短语 用 β 替换 A,则 β 就是 关于A 的一个短语; 直接短语是短语范围内的一步推导; 直接短语可能不…

Rust学习笔记007:Trait --- Rust的“接口”

Trait 在Rust中,Trait(特质)是一种定义方法集合的机制,类似于其他编程语言中的接口(java)或抽象类(c的虚函数)。 。Trait 告诉 Rust 编译器: 某种类型具有哪些并且可以与其它类型共享的功能Trait:抽象的…

[ROS 系列学习教程] 建模与仿真 - 使用 ros_control 控制差速轮式机器人

ROS 系列学习教程(总目录) 本文目录 一、差速轮式机器人二、差速驱动机器人运动学模型三、对外接口3.1 输入接口3.2 输出接口 四、控制器参数五、配置控制器参数六、编写硬件抽象接口七、控制机器人移动八、源码 ros_control 提供了多种控制器,其中 diff_drive_cont…

Datawhale - 角色要素提取竞赛

文章目录 赛题要求一、赛事背景二、赛事任务三、评审规则1.平台说明2.数据说明3.评估指标4.评测及排行 四、作品提交要求五、 运行BaselineStep1:下载相关库Step2:配置导入Step3:模型测试Step4:数据读取Step5:Prompt设…

工业 web4.0UI 风格品质卓越

工业 web4.0UI 风格品质卓越

【力扣 - 每日一题】3115. 质数的最大距离(一次遍历、头尾遍历、空间换时间、埃式筛、欧拉筛、打表)Golang实现

原题链接 题目描述 给你一个整数数组 nums。 返回两个(不一定不同的)质数在 nums 中 下标 的 最大距离。 示例 1: 输入: nums [4,2,9,5,3] 输出: 3 解释: nums[1]、nums[3] 和 nums[4] 是质数。因此答…

WPF自定义模板--Button

属性&#xff1a; TemplateBinding&#xff1a;用于在ControlTemplate中绑定到控件的属性&#xff0c;例如Background、BorderBrush等。TargetType&#xff1a;指定该模板应用于哪种控件类型。在这个例子中&#xff0c;是Button。 标准的控件模板代码&#xff1a; <Style…

线性代数大题细节。

4.4 方程组解的结构&#xff08;二&#xff09;_哔哩哔哩_bilibili

eNSP中WLAN的配置和使用

一、基础配置 1.拓扑图 2.VLAN和IP配置 a.R1 <Huawei>system-view [Huawei]sysname R1 GigabitEthernet 0/0/0 [R1-GigabitEthernet0/0/0]ip address 200.200.200.200 24 b.S1 <Huawei>system-view [Huawei]sysname S1 [S1]vlan 100 [S1-vlan100]vlan 1…

vue3 window.location 获取正在访问的地址,也可以通过useRoute来获取相关信息。

1、一般我们在开发的vue3项目的时候&#xff0c;地址是这样&#xff1a;http://192.168.1.101:3100/#/login 然后我们在布署完成以后一般是这样https://xxx.yyyyy.com/uusys/#/login 其实xxx可以是www&#xff0c;也可以是一个二级域名 yyyyy.com是域名&#xff0c;uusys一般…

家政小程序的开发:打造现代式便捷家庭服务

随着现代生活节奏的加快&#xff0c;人们越来越注重生活品质与便利性。在这样的背景下&#xff0c;家政服务市场迅速崛起&#xff0c;成为许多家庭日常生活中不可或缺的一部分。然而&#xff0c;传统的家政服务往往存在信息不对称、服务效率低下等问题。为了解决这些问题&#…

Windows编程上

Windows编程[上] 一、Windows API1.控制台大小设置1.1 GetStdHandle1.2 SetConsoleWindowInfo1.3 SetConsoleScreenBufferSize1.4 SetConsoleTitle1.5 封装为Innks 2.控制台字体设置以及光标调整2.1 GetConsoleCursorInfo2.2 SetConsoleCursorPosition2.3 GetCurrentConsoleFon…

elementPlus自定义el-select下拉样式

如何在f12元素选择器上找到下拉div呢&#xff1f; 给el-select添加 :popper-append-to-body"false" 即可&#xff0c;这样就可以将下拉框添加到body元素中去&#xff0c;否则当我们失去焦点&#xff0c;下拉就消失了&#xff0c;在元素中找不到el-select。剩下就可以…

华硕魔霸5原装Windows10原厂系统 工厂模式 带ASUS Recovery恢复功能

华硕工厂文件恢复系统 &#xff0c;安装结束后带隐藏分区&#xff0c;一键恢复&#xff0c;以及机器所有驱动软件。 系统版本&#xff1a;Windows10 原厂系统下载网址&#xff1a;http://www.bioxt.cn 需准备一个20G以上u盘进行恢复 请注意&#xff1a;仅支持以上型号专用…

系统架构设计师 - 计算机网络(2)

计算机网络 计算机网络IPv6 ★概念IPv6 的优势IPv6 数据格式IPv6 地址应用IPv6 自动 IP 地址配置&#xff08;了解&#xff09;IPv4/IPv6过渡技术 网络接入&#xff08;了解&#xff09;综合布线系统 ★物联网&#xff08;了解&#xff09;概念分层 云计算&#xff08;了解&…

顺序串算法库构建

学习贺利坚老师顺序串算法库 数据结构之自建算法库——顺序串_创建顺序串s1,创建顺序串s2-CSDN博客 本人详细解析博客 串的概念及操作_串的基本操作-CSDN博客 版本更新日志 V1.0: 在贺利坚老师算法库指导下, 结合本人详细解析博客思路基础上,进行测试, 加入异常弹出信息 v1.0补…

将一个程序设置为开机启动【win11】

Windows 在 Windows 系统中&#xff0c;可以通过在 “启动” 文件夹中放置程序的快捷方式来实现开机启动。 按照以下步骤操作&#xff1a; 按 Win R 打开 “运行” 对话框&#xff0c;输入 shell:startup&#xff0c;然后按回车。这将打开 “启动” 文件夹。 找到你想设置为…