将文件存储为字符串时的文件安全性


File security when storing files as string

我有一个关于文件安全的快速问题。

我有一个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()检查大小是否在合理范围内

我看到两个安全风险

  1. 你最消毒输出&输入内容。
  2. 如果您通过验证其内容来检查文件类型
  3. 文件路径最沙箱
  4. 限制文件大小