[BJDCTF2020]Mark loves cat
首先打开题目
首先每个能点的按钮点一下,发现都是回到最顶上。
于是我开始查看源代码。
把源代码拖到最底下发现有一个不起眼的dog
然后尝试抓包。
实在没办法了,然后从github上面把源代码下载下来了
这是flag.php里面的
<?php $flag = file_get_contents('/flag');
?>
这是index.php里面的(去除掉原本能看到的)
<?php include 'flag.php'; $yds = "dog"; $is = "cat"; $handsome = 'yds'; foreach($_POST as $x => $y){ $$x = $y; } foreach($_GET as $x => $y){ $$x = $$y; } foreach($_GET as $x => $y){ if($_GET['flag'] === $x && $x !== 'flag'){ exit($handsome); } } if(!isset($_GET['flag']) && !isset($_POST['flag'])){ exit($yds); } if($_POST['flag'] === 'flag' || $_GET['flag'] === 'flag'){ exit($is); } echo "the flag is: ".$flag;
联想最开始的dog
所以这个代码应该是从exit($yds)出来了
于是我直接get传参
?yds=flag
就可以得到答案了。
又或者我们get传参
?is=flag&flag=flag
也可以得到答案,答案就在源代码里面。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!