【发布时间】:2012-06-19 03:41:58
【问题描述】:
我允许用户将文件上传到我的服务器。我面临哪些可能的安全威胁?如何消除它们?
假设我允许用户从他们的系统或网络上传图像到我的服务器。现在要检查这些图像的大小,我必须将它们存储在我的/tmp 文件夹中。不是很危险吗?如何将风险降到最低?
另外假设我正在使用wget 从用户在我的表单中上传的链接下载图像。我首先必须将这些文件保存在我的服务器中以检查它们是否真的是图像。另外,如果恶作剧者给了我一个 URL,我最终下载了一个充满恶意软件的整个网站怎么办?
【问题讨论】:
-
您并没有真正在问题本身上投入大量工作,但这是一个非常好的问题,它的核心和重点。我希望这可以成为这个主题的规范问题。
-
为什么人们投票结束这个话题是题外话?这完全是主题,这是每个程序员都需要非常注意的事情!
-
我会尽量具体一点。假设我允许用户从他们的系统或网络上传图像到我的服务器。现在要检查这些图像的大小,我必须将它们存储在我的 /tmp 文件夹中。不是很危险吗?如何将风险降到最低?
-
@deceze 同意这是主题。确实需要进行非近距离投票来对抗 CV 潮流。
-
@finnw 重新打开不是一回事,因为它发生在关闭之后。 PHP 问题是积极投递简历的,非近距离投票可能会在当时引发更彻底的讨论。在 meta 上进行了讨论,并在那里被拒绝,理由是不投票结束,你实际上是投了一个不结束的投票。不过我不同意这个结论。