将图像转换为执行它

时间:2010-11-21 02:44:57

标签: php security image image-processing

我在谈论用户上传的图片。这些图像可能不安全,甚至可能包含脚本等。有人告诉我,只要我不执行图像,我应该没事。究竟什么是执行图像?如果用户上传.png并且我需要在显示之前将其转换为.jpg,此转换是否会计为执行图片。

3 个答案:

答案 0 :(得分:2)

如果你是使用一些库来使用库,然后唯一的方法就是安全风险是库本身的问题。例如。如果库中存在缓冲区溢出安全问题,仅仅读取图像的过程可能会使其执行方便地隐藏在图像中的代码(即图像不再是图像,它将变成代码)。

如果您使用标准库,则此类安全漏洞的可能性相当小。但不是零,但我想你不得不忍住这一点,或者不再看你生活中的任何数码照片。

答案 1 :(得分:1)

如果用于转换图像的工具不容易受到任何攻击,则转换它的行为不涉及执行它。

答案 2 :(得分:0)

如果您愿意,您可以信任图像转换过程,但正如其他人所说,存在的风险就是简单地处理数据可能会让您感到脆弱。如果图像处理步骤很重要,您可以采取其他步骤来隔离图像处理步骤。

您可以将该步骤放在单独的计算机上,以便妥协不会将恶意代码放在服务器上与公众通信。您也可以将该进程作为另一个用户运行,以便利用漏洞必须升级权限才能破坏您的服务。