Ctfshow基础二刷(1)

news2025/1/11 11:51:08

前言:

前两天的信安给我整emo了,头一回打正经比赛,结果发现基础太差,代码审计烂得一踏糊涂。

寻思寻思,从头整一遍基础。又买了安恒出的新书。争取7号去吉林打省队选拔不给导儿丢脸吧呜呜

文件包含

web78:

这题一眼顶针了

web79

看下代码

if(isset($_GET['file'])){
    $file = $_GET['file'];
    $file = str_replace("php", "???", $file);
    include($file);
}else{
    highlight_file(__FILE__);
}

有个简单替换,把php替换成了???

凭借我的🐖脑子,还是想用filter协议去读,结果被替换读不出来

正常思路:

用data协议读,这样可以使得flag.php被base64编码从而绕过,不过那个base64被叫成是什么过滤器还是什么筛选器,当初看到时候感觉挺形象的。

?file=data://text/plain;base64,PD9waHAgc3lzdGVtKCdjYXQgZmxhZy5waHAnKTs=

 web80

这题不放代码了,就是在上一题的基础上把data协议ban了

坦白说,我不会,看的答案,日志包含

?file=/var/log/nginx/access.log

本来以为和上一题是一路货色,结果传了之后发现出不来。

看了看别的师傅的WP,在UA加了一句话Mua。

想起来了,当初嫌抓包麻烦,这题直接抄的答案。。。

拿Postman跑一下,赏心悦目:

直接把原UA关掉重写一个

body直接传参,先ls,看到fl0g.php

竞争环境要等晚上11:30之后才开,我是懒狗

PHP特性

web89


if(isset($_GET['num'])){
    $num = $_GET['num'];
    if(preg_match("/[0-9]/", $num)){
        die("no no no!");
    }
    if(intval($num)){
        echo $flag;
    }
}

直接传数组?num[]=

原理数组绕过,具体我不太明白,看了别的师傅的WP

 看懂了,intval() 函数会对num进行转换,如果num是个数组的话,会导致转换失败。

转换失败即转为1.if(1)执行输出flag

 web90

这题禁止传4476,但想出flag还得要4476

直接浮点数走了

 当然截断也行.

 整乐了

web91

show_source(__FILE__);
include('flag.php');
$a=$_GET['cmd'];
if(preg_match('/^php$/im', $a)){
    if(preg_match('/^php$/i', $a)){
        echo 'hacker';
    }
    else{
        echo $flag;
    }
}
else{
    echo 'nonononono';
} 

这题和前面不太一样,两个正则表达式全都要求开头为php

但要保证能过第一个不过第二个

还得读flag.php

那php咋开头捏

截断一下直接传

 web92

这题也是,第一个If不能走,走第二个,差别在于intval函数

直接16进制绕过

 web93

这题加了个判断,不让传字母,也就是把16进制ban了,那就传8进制

 web94

 这题第二个nonono绕过的要求是num第一位不能是0,相当于是把进制转换堵死了。

小数点试试

 web95

这个。。第一个if不让传4476,第二个进制字母+点,第三个堵死进制

没办法了呜呜呜。超超

web96

这题有点迷

官方给的解释是

?u=./flag.php
or
?u=php://filter/convert.base64-encode/resource=flag.php

 还是喜欢伪协议

web97

这题第一眼看见的时候还以为是md5碰撞,跑了一下发现不对,是===

那就只能数组绕过了

下一篇接着写

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

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

相关文章

前端gojs中禁用指定节点的选中效果

代码思路 适用于禁用某些节点的选中状态,选中节点时判断该节点要不要禁用 点击节点的时候,判断节点要不要禁用选中效果 如果禁用,就在选中时,把选中节点重置为最近一次非禁用的节点 diagram.select:选中节点 diagram.…

INCA使用记录(一):INCA新建工程及观测标定

目录 1、概述 2、INCA实用方法 2.1、新建工程-添加A2L 2.2、添加工作空间 2.3、添加实验选项 ​2.4、添加硬件配置 2.5、添加工程elf 2.6、初始化工程 2.7、测量与观测参数 2.8、更换A2L之后如何更新工程 1、概述 INCA作为汽车行业常用的一种XCP处理工具,对…

javascript基础十一:JavaScript中执行上下文和执行栈是什么?

一、执行上下文 简单的来说,执行上下文是对Javascript代码执行环境的一种抽象概念,只要有Javascript代码运行,那么它就一定是运行在执行上下文中 执行上下文的类型分为三种: 全局执行上下文:只有一个,浏…

基于MPC的自适应巡航控制(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

Kyligence x 明道云|低代码平台助力中小企业实现存量背景下的创新增长

国内大部分制造企业在经历疫情后,终于迎来了市场端的消费需求的恢复和增长,但如何在激烈的竞争中以更少投入,获得更高回报,在市场上获得一席生存之地,成为了悬在众多企业头上的达摩克利斯之剑。在市场野蛮生长阶段时&a…

使用PYQT5和VTK实现一个六轴跟随的电路板转动动画效果

实现过程: 关于六轴: 线下有一个带有六轴姿态传感器的硬件设备,将采集到的三轴加速度和角速度的值每隔1秒通过串口发送给电脑,电脑上位机使用的是pyqt5,在python中调用serial模块进行串口数据的接收,接收…

专业是要选软工还是人工智能?

大家好,我是帅地。 在帅地的训练营里,也有不少 26 届的学员,不过大一即将过去,部分学校是到了大一后面或者大二才开始细分专业方向的,包括一些想要转专业的同学,也需要选择一个细分的方向,而且…

10:mysql----存储引擎--进阶篇

目录 1:MySQL体系结构 2:存储引擎简介 3:存储引擎特点 4:存储引擎选择 1:MySQL体系结构 连接层 : 最上层是一些客户端和链接服务,主要完成一些类似于连接处理、授权认证、及相关的安全方案。服务器也会为安全接入的每个客户端验证它所具有的操作权限。 服务层 :…

抽象轻松JavaScript

想象一样,现在有一个苹果,两个苹果,一箱苹果在你面前 看,上面的三种苹果,(我写的是苹果就是苹果) 语境1 例如你现在要搬运苹果! 那么现在上面有苹果,一个,两…

阿里云的数据库架构如何设计,以实现高可用性和容灾性?

阿里云的数据库架构如何设计,以实现高可用性和容灾性?   在当今的数字化时代,数据库作为应用程序的核心组件之一,对于企业的正常运行至关重要。这篇文章将为您解析阿里云如何设计其数据库架构,以实现高可用性和容灾性…

加法器种类介绍

二进制加法器 二进制加法器接收加数A和B,以及进位Ci,输出和S,以及进位输出Co.二进制加法器的真值表如下: 逻辑表达式: S A ⊕ B ⊕ C i SA⊕B⊕C_i SA⊕B⊕Ci​ C o A B B C i A C i C_oABBC_iAC_i Co​ABBCi​ACi​ 从实现的角度,可以…

好兄弟,一天面了4家公司,堪称Offer收割机...

好兄弟一天面了4家公司,堪称Offer收割机… 面试感受 先说一个字 是真的 “ 累 ” 安排的太满的后果可能就是一天只吃一顿饭,一直奔波在路上 不扯这个了,给大家说说面试吧,我工作大概两年多的时间,大家可以参考下 在…

开关电源DCDC并联均流输出8V(XL4015)-2011年全国电赛题

2011年全国电赛题-开关电源模块并联供电系统,两路XL4015芯片做DCDC模块输出8V,采用主从均流法,可实现多种比例精确分配电流,效率在80%以上。 题目 设计并制作一个由两个额定输出功率均为 16W 的 8V DC/DC 模块构成的并联供电系统…

【事务】@Transactional 注解参数详解

文章目录 前言一、参数详解1.1、isolation(事务隔离级别)1.2、propagation(事务传播机制)1.3、readOnly(事务读写性)1.4、noRollbackFor 和 noRollbackForClassName(遇到时不回滚)1.…

PHPMySQL基础(四):模拟登录Login功能案例

PHP&MySQL基础(一):创建数据库并通过PHP进行连接_长风沛雨的博客-CSDN博客 PHP&MySQL基础(二):通过PHP对MySQL进行增、删、改、查_长风沛雨的博客-CSDN博客 PHP&MySQL基础(三):处理查询SQL返…

敏捷指标: 评估计划的进展

作者 | Will Hayes, Patrick Place, and Keith Korzec ——卡耐基梅隆大学 度量标准有助于实现一个运作良好的系统,评判现有流程的绩效。在项目交付契约功能时能够对其性能进行监督。本文探讨了在一个复杂的信息物理系统的迭代、增量交付过程中,政府项目…

Django从Models 10分钟建立一套RestfulApi

简介 Django是一套完善而强大的web开发框架, 结合Django Restframework我们可以非常快的搭建一套后台的api, 该api主要特点: 标准的Restful接口, 支持增删改查 每个模型分列表和详情两种接口, 列表GET获取列表/POST新建,详情接口GET获取详情/PUT修改/DELETE删除所有接口自带权…

DJ4-5 基本分段存储管理方式

目录 4.5.1 分段式存储管理方式的引入 4.5.2 分段式存储管理的基本原理 一、分段 二、段表 三、地址变换机构 4.5.3 段的共享和保护 一、分页共享 二、分段共享 4.5.4 段页式存储管理 一、段页式存储管理的引入 二、段页式存储管理 三、地址变换机构 四、评价…

小明找前缀100000(假)

题目背景 小明最近上课天天睡觉,于是啥都不会。 一天,老师终于点兵点将点到他回答问题,你能帮他渡过难关吗? 现在老师给了小明 n 个由 0、1 构成的字符串,然后有 m 次询问, 每次询问给出一个由 0、1 构…

【医学图像】图像分割系列.3 (uncertainty)

介绍几篇使用不确定性引导的医学图像分割论文:UA-MT(MICCAI2019),SSL4MIS(MICCAI2021),UG-MCL(AIIM2022). Uncertainty-aware Self-ensembling Model for Semi-supervise…