2017年9月7日--美国三大信用评级机构之一的Equifax公司宣布其遭遇黑客入侵,,大约1.43亿名美国用户数据泄露。此次数据泄漏事件还对一些英国及加拿大公民的个人信息造成了影响。Equifax公司曾发声明称,犯罪分子利用服务器的漏洞来获取某些文件。每当发生此类事件的时候,人们自然会问漏洞是什么?如何预防?我们能从中学到什么?作为软件安全专家,新思科技对此次黑客事件做了分析。
漏洞是哪种类型?
我们目前没有确切的信息证明黑客是利用了哪些软件漏洞窃取资料。但是,基于Equifax公司的声明可以判断该漏洞可能是目录遍历漏洞、命令注入漏洞,或者不安全的直接物件索取漏洞。这些都是常见且可被利用来获取非授权文件的网络软件漏洞。
这些危险是否可以预防?
此类信息泄露事件通常都是由于企业或机构没有严格遵循安全软件开发规则。安全问题可以在以下几个阶段采取预防措施:
规划、架构及设计: 应用程序架构师可以施行更强的管控。这样可以保护客户数据不会因为一个简单的网络软件漏洞就造成大规模的泄露。他们可以添加强大的集中授权检查、使用输入验证框架等。
实施:开发人员可以实施应用程序,以便在所有正确的地方执行正确的检查。如果没有一个完善的架构和设计,这个实施起来虽困难,但可行。
验证(代码审查和静态分析):静态分析工具非常适用于查找网络软件漏洞。另外,手动代码审查可以找到工具不易查出的问题。双管齐下的措施可用来查找开发人员造成的实施错误。
验证(安全测试):如果漏洞一直处在测试环境,安全测试工具和手动技术可以查找到这些类型的问题。
发布及响应:运营团队应该监测异常的应用程序。虽然在这不是阻止攻击的理想时段,但仍然有必要制定适当的控制措施。这次黑客攻击发生在5月至7月之间。这意味着运营团队可能没有快速检测,及时响应和控制对网络软件的攻击 。
网络安全警钟长鸣
综上所述,此类攻击事件通常是由于企业或组织不遵循安全软件开发规则的结果。在软件开发生命周期(SDLC)初期添加控件是最简单和最具成本效益的方式。因此,在SDLC初期就进行架构风险分析及威胁建模至关重要。如果合适的架构和设计控制被添加在正确的阶段,就可以预防很多安全问题。
开发人员应接受防范性编程培训,以便了解网全以及如何防范各类漏洞。开发人员和安全团队应该使用静态分析工具来帮助查找实施漏洞,且应用代码审查和安全测试来进一步降低漏洞的风险。运营需要密切关注和警惕应用程序的任何异常活动。
这些只是企业或组织需要采取的安全措施的一小步。大家可以关注内置安全成熟度模型(BSIMM)。其一系列更加全面的评估标准可以更加准确地评测软件安全性计划的有效性。此外,更重要的是企业需要确保所有软件和系统的安全性。
Equifax的声明中提到,没有证据表明公司核心消费者或商业信用报告数据库发生过“未经授权”的访问行为。这并不奇怪。企业往往侧重于保护其核心系统,但是对他们认为不那么重要的应用/系统就放松警惕。
新思科技是您应用软件安全之旅可靠的舵手。