easyupload
题目描述
一名合格的黑客眼中,所有的上传点都是开发者留下的后门
进入场景
-
是个文件上传的页面,测试上传的文件类型,发现是图片上传点
上传正常图片,会回显文件上传的路径 -
尝试推测文件上传检测点
测试后缀名php、php5、ph,发现禁止了ph,随便测试其他后缀发现是ph黑名单验证,尝试上传.htaccess解析文件,后缀也被禁用了。看看有没有其他绕过方式,百度到可以利用.user.ini自定义php配置项来尝试。
测试文件类型,对MIME进行了图片检测,可以修改Content-type为图片类型绕过。
检测文件头信息,可以添加GIF89a等图片特征值绕过。
检测文件内容,不能包含php字符串,可用类似<?= phpinfo();?>绕过。 -
上传配置文件.user.ini,自定义auto_prepend_file路径
-
再上传木马图片
-
查看上传文件的路径
-
利用木马连接,查找flag
在跟目录下找到旗帜文件 -
查看flag
.user.ini文件
php.ini是php的一个全局配置文件,对整个web服务起作用;而.user.ini和.htaccess一样是目录的配置文件,.user.ini就是用户自定义的一个php.ini,我们可以利用这个文件来构造后门和隐藏后门。
php 和user 相关配置项:
auto_prepend_file = <filename> //包含在文件头
auto_append_file = <filename> //包含在文件尾