您的位置首页百科问答

缓存溢出是什么意思

缓存溢出是什么意思

的有关信息介绍如下:

缓存溢出是什么意思

存溢出又称为缓冲溢出,让我们先从讨论什么是缓冲区开始,缓冲区指一个 程序的记忆范围(领域),该领域是用来储存一些数据,如电脑程序信息,中间 计算结果,或者输入参数。把数据调入缓冲区之前,程序应该验证缓冲区有足 够的长度以容纳所有这些调入的数据。否则,数据将溢出缓冲区并覆写在邻近的数据上,当它运行时,就如同改写了程序。 假如溢出的数据是随意的,那它就不是有效的程序代码,当它试图执行这些随意数据时,程序就会失败。另一方面,假如数据是有效的程序代码,程序将会 按照数据提供者所设定的要求执行代码和新的功能。

缓存溢出(Buffer overflow),是指向缓冲区写入使之溢出的内容,来拿到Unix的root权限,针对C程序设计缺陷进行攻击。缓存溢出(或译为缓冲溢出)为黑客最为常用的攻击手段之一,蠕虫病毒对操作系统高危漏洞的溢出高速与大规模传播均是利用此技术。缓存溢出攻击从理论上来讲可以用于攻击任何有缺陷不完美的程序,包括对杀毒软件、防火墙等安全产品的攻击以及对银行程序的攻击。