最近接手了一个使用ue编辑器的tp项目,并发现了几起恶意上传事件,针对这一情况,做了一些简单优化限制。
未优化之前,百度ue编辑器的上传图片文件功能没有做验证限制,所以所有人都可以拿到上传地址进行随意上传,所以目前的优化方案是把ue编辑器默认的上传文件controller.php里面的内容复制到自定义方法里面,整理为一个可以验证用户是否登录等等的api接口,至于这个api接口放那个位置,就看你们自己了。
新增了单独获取域名的函数getUEBasePath1;
function getUEBasePath1(docUrl, confUrl) {
return document.location.origin;
}
目前简单的优化只是为了防止编辑器的上传功能被滥用,如果有更好的办法,也欢迎各位大佬能够分享一下。
为了防止意外情况发生,可以在upload文件夹里面添加一个.user.ini文件,如果是使用的是宝塔,文件内容如下:
open_basedir=项目路径/upload/:/tmp/:/proc/
添加.user.ini文件后还可以限制upload文件夹里面的脚本查看upload文件夹以外的文件信息。
如果运行环境是apcahe