缓冲区溢出攻击如何应对缓冲区溢出漏洞攻击?

缓冲区溢出攻击  时间:2021-08-29  阅读:()

何为缓冲区溢出攻击,分布式拒绝服务攻击

分布式拒绝服务攻击(DDOS)通过大量合法的请求占用大量网络资源,以达到瘫痪网络的目的。

这种攻击方式可分为以下几种: 通过使网络过载来干扰甚至阻断正常的网络通讯; 通过向服务器提交大量请求,使服务器超负荷; 阻断某一用户访问服务器; 阻断某服务与特定系统或个人的通讯。

缓冲区溢出

啊~~ 看你的样子你好像不知道啊! 缓冲区溢出算比较严重的问题.... 你上百度查一下啊... 缓冲区溢出是一种非常普遍、非常危险的漏洞,在各种操作系统、应用软件中广泛存在。

利用缓冲区溢出攻击,可以导致程序运行失败、系统当机、重新启动等后果。

更为严重的是,可以利用它执行非授权指令,甚至可以取得系统特权,进而进行各种非法操作。

缓冲区溢出攻击有多种英文名称:buffer overflow,buffer overrun,smash the stack,trash the stack,scribble the stack, mangle the stack, memory leak,overrun screw;它们指的都是同一种攻击手段。

第一个缓冲区溢出攻击--Morris蠕虫,发生在二十年前,它曾造成了全世界6000多台网络服务器瘫痪。

我家的电脑前几天刚出现这样的问题 吓死我了 要是我的话 建议你"一键GHOST"然后重新下载防毒软件 什么360 卡巴斯基 瑞星 你平常用哪些就下下来 游戏什么的重新下载吧 虽然比较麻烦 我家的电脑 反正现在好了 嘿嘿~~~小窃喜一下 反应也快了~~~

缓冲区溢出的攻击

通过往程序的缓冲区写超出其长度的内容,造成缓冲区的溢出,从而破坏程序的堆栈,造成程序崩溃或使程序转而执行其它指令,以达到攻击的目的。

造成缓冲区溢出的原因是程序中没有仔细检查用户输入的参数。

下面通过一个示例来详细看看什么是缓冲区溢出。

程序的缓冲区就像一个个格子,每个格子中存放不同的东西,有的是命令,有的是数据,当程序需要接收用户数据,程序预先为之分配了4个格子(下图1中黄色的0~3号格子)。

按照程序设计,就是要求用户输入的数据不超过4个。

而用户在输入数据时,假设输入了16个数据,而且程序也没有对用户输入数据的多少进行检查,就往预先分配的格子中存放,这样不仅4个分配的格子被使用了,其后相邻的12个格子中的内容都被新数据覆盖了。

这样原来12个格子中的内容就丢失了。

这时就出现了缓冲区(0~3号格子)溢出了。

在上面示例的基础上来看一个代码实例,程序如下: void function(char *str) { char buffer[16]; strcpy(buffer,str); } 上面的strcpy()将直接把str中的内容copy到buffer中。

这样只要str的长度大于16,就会造成buffer的溢出,使程序运行出错。

存在象strcpy这样的问题的标准函数还有strcat(),sprintf(),vsprintf(),gets(),scanf()等。

当然,随便往缓冲区中填东西造成它溢出一般只会出现“分段错误”(Segmentation fault),而不能达到攻击的目的。

最常见的手段是通过制造缓冲区溢出使程序运行一个用户shell,再通过shell执行其它命令。

如果该程序有root或者suid执行权限的话,攻击者就获得了一个有root权限的shell,可以对系统进行任意操作了。

缓冲区溢出攻击之所以成为一种常见安全攻击手段其原因在于缓冲区溢出漏洞太普遍了,并且易于实现。

而且,缓冲区溢出成为远程攻击的主要手段其原因在于缓冲区溢出漏洞给予了攻击者他所想要的一切:植入并且执行攻击代码。

被植入的攻击代码以一定的权限运行有缓冲区溢出漏洞的程序,从而得到被攻击主机的控制权。

在1998年Lincoln实验室用来评估入侵检测的的5种远程攻击中,有2种是缓冲区溢出。

而在1998年CERT的13份建议中,有9份是是与缓冲区溢出有关的,在1999年,至少有半数的建议是和缓冲区溢出有关的。

在Bugtraq的调查中,有2/3的被调查者认为缓冲区溢出漏洞是一个很严重的安全问题。

缓冲区溢出漏洞和攻击有很多种形式,会在第二节对他们进行描述和分类。

相应地防卫手段也随者攻击方法的不同而不同,将在第四节描述,它的内容包括针对每种攻击类型的有效的防卫手段。

缓冲区溢出攻击的目的在于扰乱具有某些特权运行的程序的功能,这样可以使得攻击者取得程序的控制权,如果该程序具有足够的权限,那么整个主机就被控制了。

一般而言,攻击者攻击root程序,然后执行类似“exec(sh)”的执行代码来获得root权限的shell。

为了达到这个目的,攻击者必须达到如下的两个目标: 1. 在程序的地址空间里安排适当的代码。

2. 通过适当的初始化寄存器和内存,让程序跳转到入侵者安排的地址空间执行。

可以根据这两个目标来对缓冲区溢出攻击进行分类。

缓冲区溢出式攻击方法分析与防范策略

它一般是由于编成人员的疏忽造成的。

具体的讲,溢出漏洞是由于程序中的某个或某些输入函数(使用者输入参数)对所接收数据的边界验证不严密而造成。

根据程序执行中堆栈调用原理,程序对超出边界的部分如果没有经过验证自动去掉,那么超出边界的部分就会覆盖后面的存放程序指针的数据,当执行完上面的代码,程序会自动调用指针所指向地址的命令。

根据这个原理,恶意使用者就可以构造出溢出程序。

如何应对缓冲区溢出漏洞攻击?

1999年,至少有半数的建议与缓冲区溢出有关,目前公开的安全漏洞通告也有相当一部分属于 缓冲区溢出漏洞。

缓冲区溢出攻击利用了目标程序的缓冲区溢出漏洞,通过操作目标程序堆栈并暴力改写其返回地址,从而获得目标控制权。

它的原理是:向一个有限空间的缓冲区中拷贝过长的字符串,这带来两种后果,一是过长的字符串覆盖了相临的存储单元而造成程序瘫痪,甚至造成宕机、系统e69da5e6ba90e799bee5baa631333332636430或进程重启等;二是可让攻击者运行恶意代码,执行任意指令,甚至获得超级权限等。

事实上,在网络空间中利用这种缓冲区溢出漏洞而发起的攻击屡见不鲜。

早在1988年,美国康奈尔大学的计算机科学系研究生,23岁的莫里斯利用Unix fingered程序不限制输入长度的漏洞,输入512个字符后使缓冲器溢出。

莫里斯又写了一段特别大的程序使他的恶意程序能以root(根)身份执行,并感染到其他机器上。

年初名燥一时的“SQL Slammer”蠕虫王的发作原理,就是利用未及时更新补丁的MS SQL Server数据库缓冲区溢出漏洞,采用不正确的方式将数据发到MS SQL Server的监听端口,这个错误可以引起缓冲溢出攻击。

攻击代码通过缓冲溢出获得非法权限后,被攻击主机上的Sqlserver.exe进程会尝试向随机的IP地址不断发送攻击代码,感染其他机器,最终形成UDP Flood,造成网络堵塞甚至瘫痪。

由上可知,缓冲区溢出攻击通常是在一个字符串里综合了代码植入和激活纪录。

如攻击者将目标定为具有溢出漏洞的自动变量,然后向程序传递超长的字符串,进而引发缓冲区溢出。

经过精巧设计的攻击代码以一定的权限运行漏洞程序,获得目标主机的控制权。

这种攻击手段屡次得逞主要是利用了程序中边境条件、函数指针等设计不当问题,即利用了C程序本身的不安全性。

大多数Windows、Linux、Unix系列的开发都依赖于C语言,所以缓冲区溢出攻击成为操作系统、数据库等应用程序最普遍的漏洞之一。

值得关注的是,防火墙对这种攻击方式无能为力,因为攻击者传输的数据分组并无异常特征,没有任何欺骗(这就是Nimda、SQL Slammer可以顺利穿透防火墙的原因)。

另外可以用来实施缓冲区溢出攻击的字符串非常多样化,无法与正常数据有效进行区分。

缓冲区溢出攻击不是一种窃密和欺骗的手段,而是从计算机系统的最底层发起攻击,因此在它的攻击下系统的身份验证和访问权限等安全策略形同虚设。

用户及开发者该如何降低因缓冲区溢出而造成的攻击损失呢?首先,编程人员可以使用具有类型安全的语言 Java以避免C的缺陷;产品发布前仔细检查程序溢出情况;使用检查堆栈溢出的编译器等。

作为普通用户或系统管理员,应及时为自己的操作系统和应用程序更新补丁;减少不必要的开放服务端口等,合理配置您的系统。

  • 缓冲区溢出攻击如何应对缓冲区溢出漏洞攻击?相关文档

legionbox:美国、德国和瑞士独立服务器,E5/16GB/1Gbps月流量10TB起/$69/月起

legionbox怎么样?legionbox是一家来自于澳大利亚的主机销售商,成立时间在2014年,属于比较老牌商家。主要提供VPS和独立服务器产品,数据中心包括美国洛杉矶、瑞士、德国和俄罗斯。其中VPS采用KVM和Xen架构虚拟技术,硬盘分机械硬盘和固态硬盘,系统支持Windows。当前商家有几款大硬盘的独立服务器,可选美国、德国和瑞士机房,有兴趣的可以看一下,付款方式有PAYPAL、BTC等。...

腾讯云轻量服务器老用户续费优惠和老用户复购活动

继阿里云服务商推出轻量服务器后,腾讯云这两年对于轻量服务器的推广力度还是比较大的。实际上对于我们大部分网友用户来说,轻量服务器对于我们网站和一般的业务来说是绝对够用的。反而有些时候轻量服务器的带宽比CVM云服务器够大,配置也够好,更有是价格也便宜,所以对于初期的网站业务来说轻量服务器是够用的。这几天UCLOUD优刻得香港服务器稳定性不佳,于是有网友也在考虑搬迁到腾讯云服务器商家,对于轻量服务器官方...

华为云年中聚惠618活动,新用户专区,云服务器低至88元/年,3年仅580.98元,热销抢购中,最后2天!

华为云怎么样?华为云用在线的方式将华为30多年在ICT基础设施领域的技术积累和产品解决方案开放给客户,致力于提供稳定可靠、安全可信、可持续创新的云服务,做智能世界的“黑土地”,推进实现“用得起、用得好、用得放心”的普惠AI。华为云作为底座,为华为全栈全场景AI战略提供强大的算力平台和更易用的开发平台。本次年终聚惠618活动相当给力,1核2G内存1m云耀云服务器仅88元/年起,送主机安全基础版套餐,...

缓冲区溢出攻击为你推荐
阈值电压MOS管的过驱动电压及阈值电压是多少?互联网接入计算机接入因特网的方式有哪几种余额宝收益走势图支付宝余额宝收益46块6,存了多少网络营销讲师北京网络营销培训,纵横电商老师怎么样?通话宝谁用过4G电话宝,这个软件怎么样啊?无线存储无线摄像头里的远程存储和本地存储是怎么回事?封包是什么洛克王国封包是什么意思查看加密空间怎么看加密的qq空间解码器有什么用完美解码的具体作用是什么?我很好奇???小时代发布会完整版郭敬明《小时代2.0虚铜时代》限量版上市时间
空间域名 虚拟主机99idc 免费域名注册 fc2新域名 域名升级访问中 万网域名代理 工信部域名备案系统 三级域名网站 z.com cdn服务器 谷歌香港 42u机柜尺寸 mobaxterm 免费名片模板 2017年黑色星期五 tightvnc hnyd 申请个人网页 浙江独立 中国智能物流骨干网 更多