i春秋-CTF

本文详细介绍了CTF比赛中的几个挑战,包括代码审计、验证码爆破、文件路径猜解和加密解密。通过源码审计发现了SQL注入和文件下载漏洞,利用这些漏洞获取了关键信息,并通过编写Python脚本解决了一些限时问题,最终解密得到了flag。

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

VID

这里写图片描述
查看网页源代码发现有个文件路径
这里写图片描述
访问的看到了有三个参数用get方式提交
这里写图片描述
在url后提三个参数和对应的值就看到了一个1chunqiu.zip
这里写图片描述
访问就可以下载文件
这里写图片描述
这里需要进行代码审计
这里写图片描述
先看log.php界面

if(isset($_POST['username']) && isset($_POST['password']) && isset($_POST['number'])){
    $db = new mysql_db();
    $username = $db->safe_data($_POST['username']);
    $password = $db->my_md5($_POST['password']);
    $number = is_numeric($_POST['number']) ? $_POST['number'] : 1;
    $username = trim(str_replace($number, '', $username));
    $sql = "select * from"."`".table_name."`"."where username="."'"."$username"."'";

这里username处存在注入,他只进行了safe_data处理,我们跟进这个函数

 public function safe_data($value){
   
   
        if( MAGIC_QUOTES_GPC ){
            stripcslashes($value);
        }
        return addslashes($value);
    }

这个代码的意思是在username中找我们输入的车牌号“number”,如果找到就替换成空,

$username = trim(str_replace($number, '', $username));

根据文件路径访问到登陆界面

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值