【学习笔记4】buu [ACTF2020 新生赛]BackupFile

打开后首先看到一行提示,提示说让我们找到备份的文件,找找看,最后试出是index.

php.bak,下载下来后打开看看。

<?php

include_once "flag.php";//包含一次flag.php

if(isset($_GET['key'])) {

    $key = $_GET['key'];

    if(!is_numeric($key)) {//如果传入值不为字符串就显示Just num

        exit("Just num!");

    }

    $key = intval($key);;//获取key的数值

    $str = "123ffwsfwefwf24r2f32ir23jrw923rskfjwtsw54w3";

    if($key == $str) {//弱类型比较key和str的值是否相同

        echo $flag;//返回得到flag

    }

}

else {

    echo "Try to find out source file!";

}

但是int类型没法和str类型直接比较,需要先经过类型转换,这里的123ffwsfwefwf24r2f32ir23jrw923rskfjwtsw54w3转换成int类型后只会保留123从非数字的第一位开始全部舍去,所以只需要给key传一个123就能得到flag

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。