2012年(272)
分类: 网络与安全
2012-06-27 11:06:47
上星期和黑哥在群里谈到了安全与业务的一些问题,黑哥之后有感而发,写了一篇:
安全的地位有多高
回复参与讨论的人挺多的,我本来也想在下面回,但是考虑到百毒老是会莫名其妙的删回复,尤其是我还要引用一篇我自己文章的url,肯定会被当成spam,所以还是在自己的地盘写点感想吧。
从大方向上来看,我还是比较赞同黑哥的观点的。我前些时候写过一篇blog:
浅谈互联网公司安全的发展方向
在文中我谈到了互联网公司做安全的四个目标,其中第三个就是:
第三个目标:让安全成为公司的核心竞争力,深入到每一个产品的特性中,能够更好的引导用户 使用互联网的习惯。
这一点,与黑哥的观点是一致的,就是发展到了高级阶段,安全需要去影响业务,如果做的好了,甚至要能够影响用户的使用习惯,引导非常的重要。
但是,我认为,这个过程不是一蹴而就的,是一个非常艰苦的持续斗争的过程。和谁斗争?和黑客斗争,和自己公司的业务线“斗争”,和老板“斗争”。
安全要走进业务中去,才能提高自己的地位。Firefox 之所以敢做History Hacking 的defense,IE之所以要做XSS Filter,就是因为安全已经成为业务的Key Feature,成为了这些浏览器厂商的核心竞争力,成为了击败对手的武器,成为了行业的门槛。
在甲方搞安全的朋友应该明白,在甲方做安全,公司最关心的是什么?游戏公司最关心的是盗号、外挂等问题,电子商务公司关心的是盗号、欺诈、钓鱼等问题,SNS还有个隐私问题需要关注。这些安全问题,都是直接涉及到公司主营业务的安全问题,所以公司特别关注。而传统的服务器安全、内网安全,虽然也重要,但是由于是间接影响到公司的业务,所以没有那么直观,公司也难以重视。
为什么难以重视传统安全?我认为有两个因素起关键作用,一是看这家公司是否在这方面出过安全事件。比如一家公司曾经因为服务器没有打patch被黑客入侵过,还造成了严重的后果,那么就会知道怕了,就知道这方面一定要做好;二是看安全工作的量化程度。一项安全工作,如果难以量化,难以看到数字化、图表化的效果,那么,也难以影响高层的决策,因为高层根本就没有任何可依据的东西,去做这方面的决策。
这其实也是一件很悲哀的事情,因为安全工作有一部分运气的成分在里面,可能一个网站的服务器什么patch都没有打,但就是没有黑客去动他,也许黑客都不关注这个网站。另一家公司可能每天都打patch,结果偏偏某一天有个疏漏,而黑客正好在那天心情不好,就攻击了一下,结果攻击成功。这种例子很极端,但我确实是在现实生活中见到过这种血案。
话说回来,我以前还写过另外一篇关于评估风险的文章,其中一个DREAD风险评估模型(有兴趣的可以搜搜我的blog),它的维度涉及到:危害的程度、用户覆盖范围、利用的难易程度,等等,所以如果从一个比较科学的角度出发,就能够在一定程度上规避我上面例子中的“疏漏”。
有点扯远了,再回到我的那篇文章,我曾和kj谈过我的四个目标,我认为这四个目标的关系,没有先后,可以先做其中一个,也可以同时做。但是有主次之分,主次应该是依次递减。在公司自己的基本问题没解决前,去搞业务的问题,很可能要吃大亏。
比如业务代码里的漏洞还没有修复,就成天跑去和产品线说要做个安全的feature给用户用,结果feature还没做好,公司的业务因为漏洞被黑客攻击而中断了,可能整个公司都要遭受巨大的损失。这种情况,就是没有分清工作的主次。
具体的工作如何分清主次?这就需要资深的安全工程师通过自己的Professional Judgement来做判断了。所以前天我还和neeao讲了一下他写的那个招聘简历,资深工程师的重要作用更多的是发挥在团队影响力、影响战略决策的能力、和对专业领域发展的前瞻性判断上,而不是用来做维护工作、培训的。
回到业务上来,熟悉“马屁股效应”的朋友应该知道,早做引导、引导的好,所形成的巨大惯性是非常可怕的。所以安全习惯也可以适当的进行引导。为什么用户今天都习惯使用密码,而不是使用证书或指纹等其他认证方式?原因很多,但是用户的习惯,也占了很重要的比例。
同时也可以看出,提出的安全需求,是需要符合市场需求和历史发展规律的,否则就可能会被淘汰掉。时间、实践,是最好的试金石。
所以我认为,不要把安全与业务分的太开,现阶段大多数公司的现状是:安全为业务保驾护航。但是安全也属于业务的一部分,可以成为业务的feature甚至是核心竞争力。
目标很远大,要戴着望远镜才能看到彼岸,路还得脚踏实地的走。