2013-04-09 69 views
0

这可能是一个愚蠢的问题,但我只是想知道,如果我有一个表单,允许用户上传3个图像文件并将这些图像通过电子邮件发送给我到外部服务器。问题是如果我只是检查扩展名以确保它是我想要的文件类型,而不检查实际的文件类型是否会成为我的服务器的任何安全问题?我知道上传文件必须先将文件临时保存到我的服务器。任何帮助将不胜感激。谢谢。上传文件并发送到电子邮件

回答

0

文件扩展名绝对不是文件类型的可靠指示器 - 任何文件类型都可以用任何扩展名命名。类似libmagic可以帮助您更好地确定文件类型,如果这是您想要做的。这就是说,只要你的服务器没有执行任何发送给它的文件,并且只作为一个邮件程序,我就不会看到用户上传恶意文件的任何风险,至少不是服务器本身。服务器配置的其他方面可能会使服务器上可执行文件的存在成为问题,但邮件程序本身并不是特别的风险。

当然,设置任何允许某人从网络发送邮件的应用程序都需要一定的授权安全级别,以避免将您的应用程序用作垃圾邮件机制。如果邮件只发送给自己,那么你是唯一一个会发送垃圾邮件的人,但它仍然可能相当烦人。