我有时听说/读到处理嵌入式漏洞利用(图像编码本身内置的恶意软件代码)的一种方法是向图像文件添加随机噪声,或调整图像大小。这些方法中的任何一种实际上有帮助吗?
作为一个非常简单(非详尽)的示例,类似这样的事情,其中 javascript 被注入到 gif 的图像编码部分以执行 xss 攻击。
我已经检查了这个 security.se 问题,它有有用的信息,但不完全是我在这里问的。
我有时听说/读到处理嵌入式漏洞利用(图像编码本身内置的恶意软件代码)的一种方法是向图像文件添加随机噪声,或调整图像大小。这些方法中的任何一种实际上有帮助吗?
作为一个非常简单(非详尽)的示例,类似这样的事情,其中 javascript 被注入到 gif 的图像编码部分以执行 xss 攻击。
我已经检查了这个 security.se 问题,它有有用的信息,但不完全是我在这里问的。
这取决于. 您给出的具体示例是针对 XSS 漏洞利用,而不是图像查看器或解码器的利用。修改此类图像可能会破坏恶意代码,具体取决于漏洞利用的类型。如果图像已损坏以至于它会利用图像查看器,那么以任何方式编辑图像(包括调整大小)很可能会将其通过与图像查看器使用的相同的易受攻击的解码器(例如 libpng)。考虑一下图像编辑器如何工作的简化视图:
源图像通过解码器,解码器将其转换为像素图。
对图像的任何修改都会在内存中对这个原始像素图进行。
像素图被压缩并转换为标准图像格式。
现在将其与图像查看器的工作方式进行比较:
源图像通过解码器,解码器将其转换为像素图。
像素图直接显示在屏幕上。
两种情况的第一步是相同的。不幸的是,这一步是易受攻击的图像解码库受到影响的地方。在许多情况下,修改图像实际上更糟糕,因为解码器通常更复杂,以支持更广泛的模糊格式和功能。