当前位置: 首页 > news >正文

BUUCTF之[ACTF2020 新生赛]BackupFile

打开环境就一句话

 找出源文件!

结合题目名字:BackupFile

先用dirsearct扫描网站文件

发现一个index.php.bak ,拼接url下载

打开发现php代码

<?php
include_once "flag.php";if(isset($_GET['key'])) {$key = $_GET['key'];if(!is_numeric($key)) {exit("Just num!");}$key = intval($key);$str = "123ffwsfwefwf24r2f32ir23jrw923rskfjwtsw54w3";if($key == $str) {echo $flag;}
}
else {echo "Try to find out source file!";
}
1.if(isset($_GET['key'])) { ... }
  • 作用:检查 URL 中是否有 key 参数(例如 ?key=123)。

  • $_GET['key']:获取用户通过 GET 方法传递的 key 参数值。

  • isset():检查变量是否已设置且非 null

2. if(!is_numeric($key)) { exit("Just num!"); }

  • 作用:检查 $key 是否是数字或数字字符串(如 "123"42),如果不是,则终止脚本并输出 "Just num!"

  • is_numeric():判断变量是否为数字或数字字符串(允许 "123""0xFF""1e3" 等形式)。

    ?key=123a 会被 is_numeric() 拒绝,因为 is_numeric() 不允许字符串中包含非数字字符(除了科学计数法 "1e3" 或十六进制 "0xFF" 等特殊情况)。

示例

  • ?key=123 → 通过

  • ?key=abc → 输出 "Just num!" 并终止

3.$key = intval($key);
  • 作用:将 $key 强制转换为整数(丢弃非数字部分)。

  • intval()

    • "123" → 123

    • "123abc" → 123

    • "abc123" → 0

示例

  • ?key=123abc → $key = 123

  • ?key=abc123 → $key = 0

4. $str = "123ffwsfwefwf24r2f32ir23jrw923rskfjwtsw54w3";
  • 作用:定义一个字符串变量 $str,用于后续比较。

5.. if($key == $str) { echo $flag; }
  • 作用:如果 $key 和 $str 弱类型相等==),则输出 $flag

= = 为弱相等,即当整数和字符串类型相比较时。会先将字符串转化为整数然后再进行比较。比如a=123和b=123admin456进行= =比较时。则b只会截取前面的整数部分。即b转化成123。

也就是说key等于123就会==str

输入的key的值123,就能得到flag


文章转载自:

http://57Agmskz.qfnrx.cn
http://aCjXwt6X.qfnrx.cn
http://HE6MerBt.qfnrx.cn
http://xO1n4EbL.qfnrx.cn
http://AMqcqL1t.qfnrx.cn
http://qL7u7ABD.qfnrx.cn
http://qI1xRj4l.qfnrx.cn
http://QuNv2EfA.qfnrx.cn
http://EqkANimG.qfnrx.cn
http://rNkS4BDl.qfnrx.cn
http://bt9vkCus.qfnrx.cn
http://BWOwZY8C.qfnrx.cn
http://t8Yo801o.qfnrx.cn
http://PanYtz9C.qfnrx.cn
http://uMxtQ7OL.qfnrx.cn
http://EaGfT8i4.qfnrx.cn
http://FADUsKqR.qfnrx.cn
http://bAhORR0w.qfnrx.cn
http://kMbMHLY4.qfnrx.cn
http://gSjqsvyy.qfnrx.cn
http://9njUAmcP.qfnrx.cn
http://gMYwnwhy.qfnrx.cn
http://nU1byDh3.qfnrx.cn
http://jZSOWZWM.qfnrx.cn
http://IfxnHPbd.qfnrx.cn
http://w1RGRPmO.qfnrx.cn
http://kD7viNDT.qfnrx.cn
http://M5ktUnu2.qfnrx.cn
http://Mtsoewcj.qfnrx.cn
http://Jr1Lji37.qfnrx.cn
http://www.dtcms.com/a/227596.html

相关文章:

  • cJSON简单使用
  • 前端面试高频问题通关指南--通用性问题
  • 洛谷-P3912素数个数题解
  • window/linux ollama部署模型
  • IPtables部署和使用
  • 基于LangChain的AI助手开发:从零到上线
  • Alist Win 基本用法
  • 强化学习-深度学习和强化学习领域
  • 第十二节:第四部分:集合框架:List系列集合:LinkedList集合的底层原理、特有方法、栈、队列
  • 【C语言】C语言经典小游戏:贪吃蛇(上)
  • 【操作系统·windows快捷键指令】
  • 第二十一章 格式化输出
  • 16.FreeRTOS
  • make_unique
  • 启动metastore时报错MetaException(message:Version information not found in metastore
  • NodeJS全栈WEB3面试题——P7工具链 测试
  • 池中锦鲤的自我修养,聊聊蓄水池算法
  • 代码随想录算法训练营第六天| 242.有效的字母异位词 、 349. 两个数组的交集 、 202. 快乐数 、1. 两数之和
  • 2023年12月6级第一套第一篇
  • 英文投资理财源码挖矿源码投资理财系统源码(源码下载)
  • 线程安全与线程池
  • 审计- 1- 审计概述
  • python打卡训练营打卡记录day43
  • 【存储基础】【VFS】inodedentrysuper_block以及它们之间的关系
  • ER图递归关系画法,chen氏
  • 【JAVA】注解+元注解+自定义注解(万字详解)
  • 计算机组成原理——CPU的功能和基本结构
  • SQL进阶之旅 Day 12:分组聚合与HAVING高效应用
  • 【Pytorch学习笔记】模型模块06——hook函数
  • 蓝云APP:云端存储,便捷管理