BUUCTF[极客大挑战 2019]Havefun 1题解

BUUCTF[极客大挑战 2019]Havefun 1题解

题目分析

生成靶机,进入网址:

首页几乎没有任何信息,公式化F12打开源码,发现一段被注释的源码:

下面我们对这段代码进行解析

php 复制代码
<!--
        $cat=$_GET['cat']; // 从URL获取cat参数
        echo $cat; // 回显参数值
        if($cat=='dog'){// 判断参数值是否为'dog'
            echo 'Syc{cat_cat_cat_cat}';// 输出flag
        }
        -->

这里我们要注意,这是一段后端代码。当然,从输出可以看出,这一定不是真实的后端代码,只是起到提示输出的作用

解题

理解代码逻辑:

后端期望通过[GET]方法的获取cat参数值,当cat参数值等于字符串"dog"时,会输出flag。

构造Payload:

访问URL:
http://题目地址/?cat=dog

这样$_GET['cat']的值就是"dog",最后的结果是:

flag{950e06b7-f7d0-4219-8824-a1b08051b52a}

总结

这道题是一道最基础的PHP代码审计题,当然,我们需要知道这段代码并非本题真正的后端代码,不要钻牛角尖。

相关推荐
杰哥技术分享3 分钟前
PHP Yii2 安装SQL Server扩展-MAC M4 Pro芯片
开发语言·php
wuk99810 天前
深入理解PHP中的生成器(Generators)
开发语言·php
A5资源网10 天前
为WordPress 网站创建一个纯文本网站地图(Sitemap)
前端·数据仓库·html·php
PHP武器库10 天前
[Hestia]开源网络服务器控制面板,快速、可靠、开源
运维·服务器·网络·开源·php
玥轩_52110 天前
BUUCTF [UTCTF2020]File Carving 1
安全·网络安全·elf·ctf·misc·buuctf·png隐写
Q_Q196328847510 天前
python高校教务管理系统
开发语言·spring boot·python·django·flask·node.js·php
专注VB编程开发20年11 天前
C#.VB.NET多线程,多用户下独立锁和全局锁的区别
开发语言·c#·php·.net
计算机毕设定制辅导-无忧学长11 天前
企业级安全实践:SSL 加密与权限管理(二)
安全·php·ssl
笨手笨脚の11 天前
Nginx-4 Nginx 的7层反向代理
运维·nginx·php
2501_9111212311 天前
OpenStack 入门与实践
服务器·php·perl