我有一个关于文件安全的快速问题。
我有一个php脚本,从一个<input type="file">
标签的文件,并使用file_get_contents()
存储在一个变量的文件数据,是否有任何安全风险,一个应该意识到?查看下面的代码:
$file_data = file_get_contents($_FILES[file]['tmp_name']);
$file = base64_encode($file_data);
基本上就是这样,我不存储或移动文件,只是将其内容作为字符串发送给RESTFUL API。
我必须决定我是否应该使用一个全新的web服务器来接受这些请求,或者这种方法在主服务器上是否安全。该网站有很多访问者,我不得不假设人们会试图导出文件字段。API不是问题,只有托管脚本的服务器安全问题。
根据php允许上传的文件大小、内存限制和服务器拥有的内存量,它可能被用来使服务器崩溃。使用filesize()检查大小是否在合理范围内
我看到两个安全风险
- 你最消毒输出&输入内容。
- 如果您通过验证其内容来检查文件类型
- 文件路径最沙箱
- 限制文件大小