upload-labss Pass-03

1.查看源码,发现为黑名单验证。

2.黑名单机制即禁止上传规定的文件类型,如该关卡限制上传文件后缀为

('.asp','.aspx','.php','.jsp')

以及以下检测

$file_name = trim($_FILES['upload_file']['name']);
        $file_name = deldot($file_name);//删除文件名末尾的点
        $file_ext = strrchr($file_name, '.');
        $file_ext = strtolower($file_ext); //转换为小写
        $file_ext = str_ireplace('::$DATA', '', $file_ext);//去除字符串::$DATA
        $file_ext = trim($file_ext); //收尾去空

由此可以看到此过滤很不严谨,因为在php中,如果默认状态下.php3,.php4,.php5,.phtml 都是会被解析为php的,因此我么可以直接上传后缀为(.php3,.php4,.php5,.phtml)的一句话木马。

3.上传成功后,打开一句话木马链接发现是空白页,判断应该是该.phtml代码没有被apache成功解析。

4.解决方法为:打开PHP study主界面,点击其他选项菜单-打开配置文件-httpd-conf。

打开后在最后一行加入AddType application/x-httpd-php .php .phtml .phps .php5 .pht代码,保存退出,重启PHP study即可。

5.此时我们再进入PHP info页面验证发现一句话木马执行成功,然后就可以去蚁剑添加数据获取flag了。