CG CTF WEB 变量覆盖

http://chinalover.sinaapp.com/web18/index.php

题解:source.php,打开发现如下关键代码:

<?php if ($_SERVER["REQUEST_METHOD"] == "POST") { ?>
  <?php
    extract($_POST);
    if ($pass == $thepassword_123) { ?>
      <div class="alert alert-success">
      <code><?php echo $theflag; ?></code>
    </div>
  <?php } ?>
<?php } ?>

extract()函数的作用:从数组中将变量导入到当前的符号表,可以看到这里的代码为:extract($_POST),即将POST的参数导入当前的符号表,由于extract()函数存在变量覆盖漏洞,所以提交post参数:pass=123&thepassword_123=123或者pass[]=&thepassword_123,即将两个变量的值修改成相同的,即可得到flag!

全部评论

相关推荐

Southyeung:我说一下我的看法(有冒犯实属抱歉):(1)简历不太美观,给我一种看都不想看的感觉,感觉字体还是排版问题;(2)numpy就一个基础包,机器学习算法是什么鬼?我感觉你把svm那些写上去都要好一点。(2)课程不要写,没人看,换成获奖经历;(3)项目太少了,至少2-3个,是在不行把网上学习的也写上去。
点赞 评论 收藏
分享
牛客刘北:如果暑期实习是27届的话,你要晚一年才会毕业,企业为什么会等你呢?要搞清时间逻辑呀!27届现在实习只能是在暑假实习,这是日常实习,不是暑期实习。所以多去投日常实习吧,暑期实习肯定不会要你的
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务