漏洞的价值
漏洞已经变成了一件贵重的商品。近来谣言四起的WMF漏洞(0 day攻击),就是在公众根本不知情的情况下展开攻击的,这个漏洞的资料被卖到了4000美元,尽管这只是一起到目前也没有经过证实的谣传。如果这是真实的,我敢打赌这种情况是前无古人的,我也能够确定它不会后无来者。甚至有像iDefense和3Com这样的公司愿意从这些安全研究者手中购买未公开发布的漏洞信息。这些情况对于漏洞研究的影响你是怎么认为的呢?不管你以哪种方式去看这个问题,在今天来讲,漏洞就是金钱。
虽然iDefense公司和3Com公司提供的程序不能对拥有安全研究小组的公司产生吸引,但他们确实能影响那些独立的研究者。因为有了这些程序,独立研究者就可以全身心地投入这种研究中。倘若他很擅长于找出漏洞,他就能够以此为职业,这种研究工作也就变成专职的工作了。我想这是非常可怕的。
漏洞的道德规范
一些人可能会对隐藏在贩卖漏洞信息之后的道德规范产生置疑。安全研究者不应该昧着良心透露漏洞的信息不是吗?也许是吧。不是这样的话难道我们应该期望安全研究者来审查商业软件是盈利销售还是免费吗?如果认为漏洞信息的销售有碍道德规范,那么我首先要问的就是那些销售非常不安全、没有保障的软件符合什么道德?当然我们知道,开发完全没有漏洞的软件是不可能的,显而易见,那些公司也不要绞尽脑汁去开发安全产品,这样,道德问题也就不会与公司纠缠了,它仅仅集中在问题的底线上。开发安全产品需要时间和金钱,软件公司不喜欢花费时间和金钱来解决这些问题,除非在这条底线上有了激烈的碰撞。
你会站在哪一边呢?你相信漏洞仅仅在公开之后才成为一种真正的威胁?还是相信无论是否公开都是都会产生威胁?
为什么我们需要负责任地公开暴露漏洞?
作为我自己来讲,我相信这些漏洞在它们被公开暴露很久之前就会对我们产生真正的威胁。公开暴露这些漏洞把公众推倒了浪尖上,很久以后该软件的开发商才会注意到此事,数月甚至数年过去了,他们都不会发出任何公开申明,看起来好像他们根本就不知道此事而只顾着牟利。这种情况看起来好像是软件开发商对于这种不安全软件转移责任的一种尝试或者一种可怜的补救方法。这里的底线,就是当一个漏洞被发现并且报告给了软件经销商之后,不管是否有人决定把这个消息公之于众,系统仍旧处于易受到攻击的状态。
在这里澄清一下,我没有说过在把一个漏洞攻击报告给开发商之前报告给Bugtraq是一种合理的做法。我也没有说过这不会使公众处于危险的状态。修复这些问题需要时间,我也不会低估尽力给传播广泛的商用软件制作补丁的难度。然而,这里会有一些局限性,也就是说,开发商逃避现实的做法和拒绝承认已经公开的漏洞不会对任何人有帮助。
我想,现在已经是开发商在发布补丁之前开始承认这些问题的时候了,特别是那些已经花费了他们数月之久、或者有些已经超过了一年的时间还没有完成的补丁。至少他们应该承认问题的存在,并且为人们提供一些保护的措施。
最后,我相信那些安全研究者帮了我们的大忙。他们应该得到一些报酬。虽然负责任地公布漏洞信息是很重要的,对于一个负责任的销售商来讲,响应时间也是一个限制因素,因为在漏洞被暴露之前很久公众就已经处在危险之中了。最后我要说的是,安全研究者不是制造了漏洞的人,正是他们发现了这些漏洞。