我正在开发一个在线应用程序,它也允许上传图像文件。处理上传的服务器是用C语言编写的。所以我在想是否可以上传恶意内容。我说的是病毒或恶意代码等。我只允许上传图像,所以我可以检查MIME类型和文件后缀。但我不确定这是否足够。上传的图片将通过HTML <img>
标记自动投放。
我知道过去的图像已被用来引发缓冲区溢出和其他令人不快的东西。但也许我不负责检查,而是在浏览器的末尾不允许图像处理暴露漏洞?
简而言之:在提供依赖于用户提供的图像的服务时,如何防止我的服务器成为恶意软件的分发中心?关于这个问题的最佳做法是什么?我会继续通过某种算法或某个库检查上传的文件吗?这会打开我的漏洞吗?这是我的顾虑吗?
编辑:我可能没有具体说明文件上传部分的操作模式。它是nxweb
的一个模块,一个用C
编写的服务器和模块一样。所以我正在寻找验证该模块中文件的方法。