gpt4 book ai didi

javascript - uploadify 的安全问题

转载 作者:行者123 更新时间:2023-12-04 02:11:08 26 4
gpt4 key购买 nike

我刚刚实现了 uploadify在我的项目中,我注意到上传过程中似乎有一个重要的安全问题:

上传文件的文件夹作为 javascript 参数提供,因此在客户端。如果用户更改脚本,并为上传填写不同的文件夹(即“/”),文件将上传到不同的文件夹。

配置中有一个选项可以过滤文件类型,但同样是在客户端提供的(“fileExt”)。

所以我认为这可能导致可能的黑客攻击是错误的吗?在 Web Root 中的任何位置上传 php 文件并执行它似乎很容易。

  • 这是期望的行为吗?
  • 我是否应该交叉检查 uploadify.php 文件中的上传文件夹?
  • 我应该向上传者发送通知吗?

我敢肯定我不是第一个想到这个的人。哦,其他配置参数也是如此,例如 sizeLimitqueueSizeLimit

最佳答案

刚看了代码(还没有在任何地方安装它),看起来这确实是一个安全问题。查看 uploadify.php,我看到了这个:

$targetPath = $_SERVER['DOCUMENT_ROOT'] . $_REQUEST['folder'] . '/';

这意味着传递“/”会将文件放入文档根目录(即您网站的主目录)。当然,用户可以轻松地(例如)传递文件夹参数,如“../../etc”和名为“passwd”的文件。或者,更简单地说,他可以将“logo.jpg”上传到文档根目录,然后,嘿,现在你的站点 Logo 有了色情内容!

当然,即使您将用户沙箱化,允许用户任意上传文件到您的服务器仍然存在很多潜在问题。如果他们上传一个 .php 文件,然后使用浏览器转到该文件怎么办?他们突然有能力在您的服务器上执行任意代码!

如果你想这样做,你应该强制用户上传到一个受限目录(realpath 函数将清理路径,以防用户用“../..”或其他什么创建疯狂的路径),并且您应该限制允许的文件类型(即仅限“.jpg”、“.gif”、“.png”或其他)。即使那样,恶意用户也可以通过填满您的磁盘配额来对您进行 DOS。

关于javascript - uploadify 的安全问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1597153/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com