[BUUOJ记录] [ACTF2020 新生赛]BackupFile、Exec
两道题都比较简单,所以放到一块记下来吧,不是水博客,师傅们轻点打
BackupFile
题目提示“Try to find out source file!”,访问备份文件/index.php.bak获得index.php源码(其实这里还试了一小会,本来以为是www.zip、bak.zip之类的,最后才想到.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!"; }
要求GET方式传递一个Key值,并且Key必须为数字且等于123ffwsfwefwf24r2f32ir23jrw923rskfjwtsw54w3这一字符串
感觉是考PHP的弱类型特性,int和string是无法直接比较的,php会将string转换成int然后再进行比较,转换成int比较时只保留数字,第一个字符串之后的所有内容会被截掉
所以相当于key只要等于123就满足条件了:
Exec
命令执行,没啥说的,利用&执行多条命令,输入127.0.0.1 & cat /flag获得Flag:
[ * ]博客中转载的文章均已标明出处与来源,若无意产生侵权行为深表歉意,需要删除或更改请联系博主: 2245998470[at]qq.com