缓冲区溢出

✍ dations ◷ 2024-12-23 05:29:33 #电脑安全,计算机编程,保全漏洞

缓冲区溢出(buffer overflow),是针对程序设计缺陷,向程序输入缓冲区写入使之溢出的内容(通常是超过缓冲区能保存的最大数据量的数据),从而破坏程序运行、趁著中断之际并获取程序乃至系统的控制权。

缓冲区溢出原指当某个数据超过了处理程序回传堆栈地址限制的范围时,程序出现的异常操作。造成此现象的原因有:

因黑客在Unix的内核发现通过缓冲区溢出可以获得系统的最高等级权限,而成为攻击手段之一。也有人发现相同的问题也会出现在Windows操作系统上,以致其成为黑客最为常用的攻击手段,蠕虫病毒利用操作系统高危漏洞进行的破坏与大规模传播均是利用此技术。比较知名的蠕虫病毒冲击波蠕虫,就基于Windows操作系统的缓冲区溢出漏洞。

例如一个用途是对SONY的掌上游戏机PSP-3000的破解,通过特殊的溢出图片,PSP可以运行非官方的程序与游戏。同样在诺基亚智能手机操作系统Symbian OS中发现漏洞用户可以突破限制运行需要DRM权限或文件系统权限等系统权限的应用程序。

缓冲区溢出攻击从理论上来讲可以用于攻击任何有相关缺陷的程序,包括对杀毒软件、防火墙等安全产品的攻击以及对银行程序的攻击。在嵌入式设备系统上也可能被利用,例如PSP、智能手机等。

在部分情况下,当一般程序(除了驱动和操作系统内核)发生此类问题时,C++运行时库通常会终止程序的执行。

目前OpenBSD、Linux、Windows、Mac OS等操作系统都具有buffer overflow protection(缓存溢出保护/存储器位置重新定向)功能,在某种程度上可以保护操作系统,但仍还是有办法让溢出的代码到正确的位置上。其作用原理是:存储器跟进程在memory中受到保护。内对外的access memory对象位置会被核心(调度器)随机定向,使其无法正确溢出。

相关

  • 异染色质异染色质(英语:Heterochromatin)是DNA内一种紧密组合的结构,转录作用在其中受到限制。目前已知染色质有两种类型,分别是真染色质与异染色质。两者差异最早是以受到染色之后的颜色
  • 村舍村舍花园是一种别具一格的花园,具有自然随意的设计、不失传统的材料、繁密葱郁的园艺种植以及并存的观赏与实用价值。它起源于英国,与富丽堂皇的正式花园风格不同,村舍花园更注
  • 笛福丹尼尔·笛福(Daniel Defoe,1660年9月13日-1731年4月24日),原名丹尼尔·福(Daniel Foe),英国小说家、新闻记者、小册子作者。其作品主要为个人通过努力,靠自己的智慧和勇敢战胜困难。
  • 魁北克省魁北克 (1763–1791)是加拿大历史上存在于1763年到1791年的英属北美殖民地的名称。魁北克(Québec)这个名称源自于阿尔冈昆语词汇“kébec”,意指河川收窄之处,传统上是指魁北克
  • 北马里亚纳群岛北马里亚纳群岛自由邦议会(英语:Northern Mariana Islands Commonwealth Legislature)是美国海外领土北马里亚纳群岛的立法机关。北马里亚纳群岛自由邦议会实行两院制,由北马里
  • 纺锤顶纺锤顶(Spindletop)是德克萨斯州博蒙特南部的一个油田,这个油田使美国进入了石油时代。
  • 安特·帕维奇安特·帕维奇(Ante Pavić,1989年3月7日-)出生于奥古林,是一位克罗地亚男子职业网球运动员,他于2008年成为职业球手。他在职业生涯最高的ATP单打世界排名是第132名(2014年10月13日),
  • 中华国中华国,是指1991年在云南曲靖、楚雄等地,由一贯道支派先天道首领龚贤哲为首成立的一个秘密结社政权。一贯道道徒龚贤哲自1973年开始,在云南一些经济文化相对落后的山区以一贯道
  • 李兵 (手球运动员)李兵(1980年1月21日-),黑龙江省哈尔滨市人,中国女子手球运动员,现为中国国家女子手球队队员。1994年,16岁的李兵被北京军区手球队教练邵志雄选中,不到三年便成为了球队的主力球员,其
  • 柬埔寨历史年表这是一份柬埔寨历史年表。它包含了柬埔寨及其前任国家的重要的法定的和领土上的变化以及政治事件。欲览这些事件的相关背景,请见柬埔寨历史。另见柬埔寨君主列表。