主题:一篇讲memory overflow导致被攻击的文章 -- yueyu
见笑了,包涵。
面试很费时间,所以有些公司的做法是先来笔试,筛掉2/3的候选人,剩下的1/3才有机会进入首轮面试。
首轮面试是针对笔试中暴露的问题,重点盘查,再筛掉1/2的人。
笔试的判卷标准需要统一,否则对考生不公平。
所以,还是要有标准答案。虽然我也同意,标准答案是一个比较笨拙的办法。
以前对缓冲区溢出痴迷过一段时间,不过还是觉得OS更吸引我,后来就没怎么关注了。
以前给GA做项目时,他们非常希望有windows下的rootkit产品。因为windows不开源,只能靠反汇编摸索,生产率很低。而linux下,公开的、非公开的各类工具大把大把的。而且互联网上不及时打补丁的服务器数不胜数。
正因为他的开源,从安全方面讲,linux还有很长的路要走。
从实践上来看,的确是Windows受攻击更多。
不要说Desktop,就是在Windows绝对是少数的Server端,就是IIS server受攻击也远多于Linux。
Windows最大的问题是一个安全漏洞大半年都不打补丁,基于同一个安全漏洞的攻击工具在这期间都要出来几十打了。
业内的真实情况与报道是有差别的,比较地下市场对这两种平台漏洞的报价就知道了。前几年那个crss漏洞(好像是这个,不太记得了),曝光前一年就在地下市场流传了,报价100W美元。而同时期linux的内核rootkit,各类提升权限的工具/代码才几千到几万美元。为什么?就因为开源,hack门槛低啊。
linux的没出事过。不是看什么报道
02年蠕虫爆发,华东华南电信网络瘫痪。从此windows的server就很难进电信联通的托管机房了
开源平台的补丁打的快,所以这些漏洞的有效时间也很快,所以贬值速度快那是正常现象。
就好比我手上有两个破解了CIA的密码,一个是一年都不会换一次的,一个是一天一换的。先不管我如何得到这两个密码,花了多少代价,如果要你去买,你愿意为哪个出更高的价格?
呵呵。
既然知道这几个函数会导致溢出,为什么不升级libc库,给这些函数加上地址检查,这样不就万事大吉了么.
1.这些函数本身是无法自身检查的(函数调用参数太少),所以只能是调用者在调用之前检查。
2.大量已经存在的程序除非重新修改,编译,链接,分发,否则“漏洞”还是在那里。
就算开源平台的补丁打的快,可并不意味“发现”的快。
俺发现了个漏洞做了个工具,俺会报告吗?俺的工具卖给谁?
买了工具的人会报告吗?那花“大钱”买的工具不成了废物,买工具的人不成了冤大头。
而且普遍而言,linux的网管水平比windows的高,所以如果说能更早的发现和汇报情况,我觉得这可能性不小。
竟认为攻击开源代码门槛更低?读源代码好像是件很简单的事?
如果说读源代码是脑力劳动,读反汇编代码就是脑力劳动+体力劳动。