标签:BJDCTF2020 GET cat flag exit loves 源代码 yds php
首先打开题目
首先每个能点的按钮点一下,发现都是回到最顶上。
于是我开始查看源代码。
把源代码拖到最底下发现有一个不起眼的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
也可以得到答案,答案就在源代码里面。
标签:BJDCTF2020,GET,cat,flag,exit,loves,源代码,yds,php 来源: https://www.cnblogs.com/FPointzero/p/15877357.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。