由0day漏洞看利用系统漏洞攻击。

来源:互联网 发布:大数据专家咨询委员会 编辑:程序博客网 时间:2024/05/29 03:20

        0day是难得被国内研究的比较广泛的系统漏洞,以前的系统漏洞很多都只限制在某个圈子里流行,很难有比较公开的资料供大家研究。这个漏洞从被微软公开下载补丁,到细节在国内被广泛传播只有短短的一两个月,或者更早的时间已经在某个圈子流行的。也许国内已经度过了从dos转型后系统安全技术由神秘到今天逐渐大众化的过程。

        0day是一个比较典型的系统漏洞看代码是最初是某段xml的解析导致了系统崩溃。这个崩溃是由一个call 引用了一个已经被释放的地址造成的。而这段地址刚刚好是指向了image src变量的http://后面的一段 。这是一个动态分配的结构含有函数地址。在被释放后又错误的被调用引起的崩溃。

         漏洞攻击有好多种,看过上面的分析你会发现。首先这次攻击是好多条件同时成立的时候才能利用。与内存益处和sql 注入不一样,上述两个漏洞使用的范围更广更不容易防备。

        在现在看溢出和这次的意外0day被发现都应该是缘于某一次意外的崩溃。意外运行到了可以控制的某个内存块成了他们的共同的特点。这种崩溃可以称为条件崩溃,他受控于某些条件的存在,这种条件崩溃受是比较少见的而且难于在一般的测试环境被发现。按我的经验这种崩溃会随软件规模和复杂度的增加而大幅增加。这里指的不是崩溃的次数,而是崩溃的诱因。这种背景噪音似的崩溃是最难处理和修复。因为就单个崩溃诱因而言其崩溃率最多不到5%,当多个诱因集合在一起和软件复杂度纠结在一起时,因为环境组合是指数级别,你在实验室环境重现他们的可能性也许不到0.01%。纠结在一起单个都在1%左右的诱因,形成的背景崩溃噪音3%左右甚至更多。

        这说明是实现良好的崩溃处理可以友好的解决这些问题。相对总运行量来说这些崩溃是很少的。但在用户的机器上因为条件是完全成立状态,对他而言这个崩溃就是100%。很尴尬的是用户强行结束了你的程序而在重新启动的时候又引发了崩溃。最终会忍无可忍的将程序卸载掉。

        

原创粉丝点击