你真的了解黑客吗?
上个月,美国大半个国家遭遇大规模DDoS攻击,导致大面积断网,这一事件令全球恐慌。美国大选期间,有黑客不断曝光竞选人员私密信息,左右选民们的思想,从而干预投票结果。美国政府怀疑是俄罗斯政府黑客所为,由此还控诉了俄罗斯政府,两国之间险些发动了黑客战争。
我(本文作者)曾经在News Digital Systems供职期间,花了八年的时间帮助DirecTV、BSkyB、STAR TV广播公司对抗付费电视黑客。通过这段时间的对抗,我总结出了一下几点。
黑客是有预算和商业计划的
好莱坞大片中描述的黑客往往都是一些不合群或者孤独的无政府主义者,他们对社会存在一定的偏见,所以会做一些黑客攻击行为。但这都是错误的误导,真正的黑客不是这样的,他们有自己的商业计划,而他们的入侵行为也是为了挣钱。比如付费电视,如果一个广播公司的节目收视率很高,那么它被黑客攻击的可能性也就变得很大。其实,如果黑客想攻击一个目标,它们的成本也是很高的,不仅要花数百万美元制作复杂的黑客装备,还要花很多的时间、人力、精力。所以黑客在发动攻击时也会考虑成本的问题,并非随心所欲。
系统版本越新,越不安全
新开发的系统不可避免的会存在一些安全漏洞,因为构架师的目的是建立一个好用的系统,并不会像黑客那样思考系统上是否存在安全漏洞。一个新系统存在漏洞是很常见的事情,在稳定之前需要安全人员不断的修修补补。所以,相比较于成熟的系统,新出现的系统或者平台更容易出现安全问题。
安全最薄弱的环节是人
很久以前还没有网络,所以也就没有网络犯罪者,但却存在诈骗者,他们能诱骗受害者乖乖交出他们手里的金钱。如今网络已经遍及每个角落,网络犯罪者也随之产生了,诈骗犯罪已经从线下转移至了线上。在网络犯罪者的诱骗下,网民们甚至会主动将自己的账号、密码等敏感信息告知陌生人。所以说,在网络安全中,最薄弱的环节就是人。
孤身对抗黑客本身就是一场失败的战役
想象一下,你的公司开发了一款产品,但不幸的是,它却是黑客们很喜欢的一个目标。你可能有一个很优秀的团队,他们能力超凡,并且时时刻刻在维护着产品的安全。但是,再看看你的攻击者,他们可能来自世界各地,有着无法估量的攻击能力,并且还有很强大的后备支撑力量(甚至可能是政府)。这本身就是一场不公平的竞争,你完全没有胜算的筹码。
开源社区好处多
其实,在攻防对抗中,你完全没必要独自一人和来自全球的黑客抗衡,你也可以雇佣一支属于自己的军队。一味的保密并不是解决问题的最好办法,不管你将系统维护的多安全,一定还有疏忽,黑客们也一定能找到突破口。真正的安全应该是基于开放环境的,让所有的安全人员都参与进来,一起寻找其中的安全问题,并在黑客利用之前将其修复。开源社区已经备好,就差产品的参与了。
安全必须具有可替代性
如果你的系统被黑掉了,怎么办?唯一的解决办法就是给系统设计一个功能,当系统被黑时,可以有一个可供替代的security机制。对于基于Web的系统而言,这很简单,因为它的安全算法存在软件上,只要更新一下就能解决问题。对于像收费电视这类系统而言,安全算法是被硬编码进硬件中的,当被黑客攻击时,更换硬件就能解决问题。
安全就是一个永不停歇的猫鼠游戏,能不能赢得游戏,不仅要了解老鼠的本性,还要看你想做什么样的猫。