BUUCTF刷题系列

本文详细介绍了多个CTF比赛中的挑战,包括SQL注入、文件包含、HTTP头部利用等,涉及多种攻击技术和解题思路,如源码查看、联合注入、变量拼接等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

[HCTF 2018]WarmUp

查看网页源代码,得到source.php
在这里插入图片描述
可以得到

<?php
    highlight_file(__FILE__);
    class emmm
    {
   
        public static function checkFile(&$page)
        {
   
            $whitelist = ["source"=>"source.php","hint"=>"hint.php"];
            if (! isset($page) || !is_string($page)) {
   
                echo "you can't see it";
                return false;
            }

            if (in_array($page, $whitelist)) {
   
                return true;
            }

            $_page = mb_substr(
                $page,
                0,
                mb_strpos($page . '?', '?')
            );
            if (in_array($_page, $whitelist)) {
   
                return true;
            }

            $_page = urldecode($page);
            $_page = mb_substr(
                $_page,
                0,
                mb_strpos($_page . '?', '?')
            );
            if (in_array($_page, $whitelist)) {
   
                return true;
            }
            echo "you can't see it";
            return false;
        }
    }

    if (! empty($_REQUEST['file'])
        && is_string($_REQUEST['file'])
        && emmm::checkFile($_REQUEST['file'])
    ) 
### BUUCTF Web 类型练习 #### 网站源码备份文件泄露和PHP反序列化 在BUUCTF平台上,有一道涉及网站源码备份文件泄露和PHP反序列化的目。这类目通常要求参赛者找到并利用服务器上存在的`.bak`或其他形式的备份文件来获取敏感信息或代码逻辑[^1]。 ```php // 示例:查找并读取备份文件 <?php $file = "backup_file.bak"; if (file_exists($file)) { echo file_get_contents($file); } ?> ``` #### Twig模板注入漏洞 另一个常见的Web安全问是模板引擎中的变量插值功能被滥用所引发的安全隐患。具体来说,在某些情况下,攻击者可以通过向HTTP请求中添加特定头部(如`X-Forwarded-For`),使得服务端渲染页面时执行恶意代码片段。例如: ```twig {{7*8}} ``` 这段代码会在页面加载过程中计算乘法表达式的值,并将其显示出来。如果应用程序允许用户输入影响此上下文的数据,则可能存在严重的安全隐患[^2]。 #### 文件包含漏洞 通过巧妙地构造命令字符串绕过过滤机制从而实现任意文件读取也是CTF竞赛中经常遇到的一种技巧。比如下面的例子展示了如何使用不同的方法去尝试访问名为`flag.php`的目标文件内容[^3]: ```bash # 方法一 cat<flag.php # 方法二 cat${IFS}flag.php # 方法三 cat$IFS$9flag.php ``` 这些技术不仅考验选手们对Linux Shell语法的理解程度,同时也考察他们能否灵活运用各种环境变量以及特殊字符组合达成目的。 #### 零基础入门学习路线 对于完全没有接触过网络安全领域的新手而言,可以从以下几个方面入手逐步建立起扎实的知识体系: - **基础知识积累**:掌握计算机网络原理、操作系统基本概念等必备理论; - **工具技能培养**:熟悉常用的渗透测试框架与自动化脚本编写能力; - **实践操作经验**:积极参与在线平台提供的各类挑战赛项目,不断巩固所学知识点; 综上所述,BUUCTF提供了一个很好的机会让爱好者们在一个相对友好且可控环境中锻炼自己的技术水平。无论是初学者还是有一定经验的人都能找到适合自己水平层次的任务来进行针对性训练[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值