【发布时间】:2012-03-29 09:01:47
【问题描述】:
我最近观看了一位芬兰互联网安全专家的this 视频。大约在第 11 分钟左右,他谈到了隐藏在图像中并在图像即将显示时执行的病毒。
我想知道他们在技术上是如何做到这样的事情的> 以及为什么图片没有以某种方式受到损害。我认为计算机首先查看扩展程序,然后使用适当的程序打开它并让程序自行运行(而且我不希望普通的图像查看器能够在自身内部运行病毒)。显然它不会那样工作,但我问过的人都无法帮助我解决这个问题。
那么有谁知道他们是怎么做到的,原理?非常感谢。
【问题讨论】:
-
en.wikipedia.org/wiki/Buffer_overflow,出现在众多图片阅读库中。
-
由于缓冲区溢出,它被认为是 #1 经典安全问题。我推荐读这本书:amazon.com/Deadly-Sins-Software-Security-Programming/dp/…假设图像是10k,而accepting agent只取了9k,agent只取了9k,剩下的现在覆盖了相邻的内存地址。假设那些是密码,你就完了。您的密码已更改。
-
@CppLearner 你有“#1”声明的来源吗?我一直听说 SQL 注入在很大程度上是排名第一的(但同样我也没有手头的源代码)。 编辑 根据 OWASP 前 10 名,SQLI 对于 Web 应用程序 排名第一。仍然没有一般漏洞的来源。
-
@KonradRudolph Hm.. 经典。不是现代的。 SQL 出现在 1974 年,第一次记录缓冲区溢出发生在 1972 年……此外,缓冲区溢出直观上是编写代码时最危险的问题。
-
@KonradRudolph 你有没有提到图像读取库中的缓冲区溢出?这似乎是一种已经存在足够长的技术,已经得到了强化,尤其是 libtiff 等开源库。