最近的Gawker媒体公司的数据入侵事件很好地证明了一点,如果一个组织没有预案,也没有成熟的拥有相关人才、制度和技术的信息安全基础结构,那么很多事情都有可能出错。
像最近许多其他被公开的攻击事件一样,对Gawker的攻击被视为是一种先进的持续性威胁的结果。鉴于Gnosis(声称对此次数据入侵事件负责的黑客小组)放言说他们能够轻易地穿透Gawker公司的网络防护,因此他们未必需要使用先进的攻击手段去破坏Gawker公司的安全措施。然而,为了完全破坏Gawker的网络安全措施,Gnosis似乎对该公司进行了持续的攻击,攻击手段都很传统,如SQL注入和缓冲区溢出。确切的攻击手段我们并不知晓,但有报告指出,Gnosis首先使用了本地文件包含攻击(local file inclusion attack),然后转向直接攻击内容管理系统。从内容管理系统,黑客们能够破坏整个系统。在本文中,我们将讨论如何处理Gawker式的数据入侵,以及企业今后该如何抵御类似的攻击。
公开披露的Gawker公司的安全现状
关于此次数据入侵事件,讨论得最多的是Gawker的密码文件的曝光。不光是密码文件,Gawker公司的内容管理系统的源代码也被公布,从而使其他攻击者可以从源代码上寻找漏洞。作为回应,Gawker公司已表示将对密码进行哈希加密,这将使得任何Gawker运营的网站或内部用户的密码凭证都难以被破解。然而,如果仍然允许弱口令或者常用口令,那么即便使用了强力的密码储存机制也无法阻止潜在的暴力破解攻击对网站密码的爆破。即使使用强大的密码,一旦攻击者拥有了root权限,他或她也能够捕获任何被输入系统的密码。
最有效的防止密码被破解的方法是根本不使用密码。启用如OAuth之类的协议能够为用户登陆网站提供更大的安全性。OAuth是一个开放的协议,允许Web应用程序不保存密码只保存授权记录,从而为Web应用程序创建安全的认证。使用Facebook连接进行登陆的Gawker账户在此次事件中没有暴露,如果此类事件再次发生,使用OAuth、OpenID或其他联邦身份认证机制能够阻止密码的泄露。如果某一组织拥有高价值的账户,那么该组织可能想要投资建立多重的身份验证机制。
企业还能做什么?
虽然提高密码和账户的安全性很有必要,但是还有其他的技术和协议能够预防、发现和应对严重的Gawker式的安全事故。根据该事件的报告,Gawker的安全体系中有许多漏洞:包括老旧的操作系统、乏善可陈的补丁管理以及其内容管理系统的潜在弱点。实施一次补丁管理过程将有助于发现潜在的过时操作系统。如果及早进行了渗透测试或代码审查,可能已经发现了本地文件包含漏洞(loacl file inclusion vulnerability);同时如果及早安装了Web应用程序防火墙,针对本地文件包含漏洞的攻击可能也不会发生。实施一次漏洞管理过程也将有助于检测上述两种情况下系统的弱点。为了发现入侵,Gawker应该使用入侵侦测或预防系统,以检测连接到系统的网络连接,这些连接在本地可能并没有被报告为恶意的。上述的技术都是常见的例子:许多人可能已经使用过这些技术,但是如果这些技术能够及早就位,那么此次数据入侵造成的损害可能会被将至最低。
此外,Gawker对此次事件的反应也不太恰当。至少,该公司应该在2010年12月11日其Twitter账户被接管的第一时间更仔细地查看系统,并通知用户他们正在调查报告上来的安全问题,而不是坚称没有出现问题。该公司还应该在得知有账户被破坏后立即通知所有可能受影响的第三方。这些步骤都应该是标准的事故应急和数据入侵预案的一部分。
结论
对其他公司来说,反思Gawker公司在数据入侵事件中的不足有助于他们确定自己还有哪些地方需要提高。Gawker公司似乎没有一个鲁棒的信息安全计划,但是如果它之前已经实现并遵循了业界的安全标准,即大多数公司会采取最低有效的安全措施——如PCI DSS或者其他兼容的措施——那么它就已经避免了此次数据入侵事件,或者至少使得该事件的影响最小化。