首页 > 解决方案 > CheckMarx - 文件操作漏洞 - php

问题描述

我的代码本质上是使用前端通过引用 php 中的 $_FILES 变量将文件上传到服务器,并将其移动到服务器上的新文件中。以下片段总结了代码,

$acutal_file = $_FILES['file_uploaded']['tmp_name'];
move_uploaded_file($actual_file, $target_file);

在这里,我从数据库中获取 target_file 变量。

因此,当我执行代码扫描时,它会为这个错误类型为“文件操作”的片段创建一个高漏洞,突出显示上面的 $_FILES 变量并给出消息“文件中获得的输入用于确定文件的位置被写入,可能允许攻击者更改或破坏该文件的内容,或完全创建一个新文件。”

有谁知道如何避免错误?

提前致谢。

标签: phpfile-manipulationcheckmarx

解决方案


我建议您阅读并应用OWASP 备忘单中关于文件上传的所有规则。这是最好的规则


推荐阅读