SAP环境中的八大安全错误
2019-09-10孟文出
孟文出
现代SAP足迹的复杂性和常见的安全故障使许多组织暴露在可避免的风险中。
配置错误和其他错误(其中许多是众所周知的)不断破坏企业SAP环境的安全性。SAP足迹的迅速复杂增长是造成这种情况的一个重要原因。多年来,SAP应用程序一直在变化和发展,现在已经连接到无数其他系统和应用程序。
典型的SAP环境由许多自定义代码和定制组件组成,这些组件相互通信,并通过各种API和接口与外部系统进行通信。ERP领域安全供应商Onapsis的CTOJuanPerez-Etchegoyen说,新的代码和协议与传统环境相互作用,并继承它们的安全漏洞和缺陷。
他指出,不断对概要文件、参数和配置进行更改,以适应新的业务流程,但很少了解潜在的安全隐患。这些环境的复杂性使他们充满了安全漏洞。
2019年早些时候,随着针对2个主要SAP组件中已知配置错误的一组漏洞的公开发布,这个问题成为了人们关注的焦点。这些漏洞统称为10KBlaze,为攻击者提供了一种获得对SAP环境的完全远程管理控制的方法,并促使US-CERT发出了警告。
下面是企业SAP环境中一些常见的配置錯误和安全故障。
1.配置ACL
访问控制列表(ACL)控制不同SAP系统之间,以及SAP和非SAP环境之间的连接和通信。它们还决定用户对SAP系统的访问。
Perez-Etchegoyen说,控制SAP系统和外部系统之间或SAP系统之间连接的ACL通常配置很差、漏洞很多,允许一个系统上的人轻松地访问另一个系统。他说,在渗透测试中,配置错误的ACL几乎总是为攻击者提供在SAP环境中横向移动的方法。
例如,Onapsis在2019年5月份披露的10KBlaze漏洞就是为了利用SAP网关和SAP消息服务器中配置不良的ACL。这些漏洞使攻击者能够完全控制SAP环境,以便查看、删除或修改数据、关闭系统和执行其他恶意操作。
Onapsis的CTO表示,SAP环境中经常配置不安全ACL的其他组件包括SAP Internet Communication Manager(ICM),SAP Dispatcher,用于远程监控和管理的SAP Management Console以及用于OS监控的SAP Host Agent ACL。
SAP长期以来一直警告组织注意配置不当ACL的危险。在这方面,新版本的应用程序要比旧版本安全得多,默认情况下ACL的设置也要严格得多,Perez-Etchegoyen说。尽管如此,不安全的ACL仍然是SAP世界中最大的可避免的漏洞之一。
2.弱用户访问控制
大多数SAP软件都有一个或多个具有高度特权和管理员级别访问权限的默认用户帐户。访问此类帐户的恶意用户可能造成严重损害。专注于SAP系统的咨询公司Enowa LLC的高级董事Jonathan Haun说,这类账户包括SAP*和DDIC以及SAP HANA中的系统用户账户。
Haun说:“黑客知道这些账户的存在,他们会首先攻击这些账户。”他表示:“企业要么在必要时禁用这些账户,要么使用非常复杂、随机生成的密码,这些密码无法被猜到。”在某些情况下,软件产品也会允许管理员安全地暂时使用这些帐户。
Perez- Etchegoyen说,SAP环境,尤其是那些随着时间的推移而发展起来的环境,其中有很多帐户,很容易被滥用,从而给恶意用户提供完全的管理员权限,甚至是超级管理员访问环境中的所有内容。“这是SAP安全的一个领域,很多组织需要改进。”
3.不安全的自定义代码
SAP Global security负责安全通信的副总裁Gert Schroeter认为,组织围绕SAP环境构建的自定义代码和功能常常存在Bug,并且包含安全漏洞。“在软件开发生命周期方面,我们确实看到了很多问题,”Schroeter说。
在快速发布软件的压力下,开发组织在构建和部署软件时,常常很少关注安全基础,比如代码漏洞分析、代码扫描和Bug搜索。Schroeter表示:“我们谈论的是设计上的安全,以及默认情况下的安全,在许多有SAP足迹的组织中,最终情况并非如此”。
4. Sloppy补丁管理
由于大多数SAP环境的关键任务性质,管理员常常犹豫不决或不愿意做任何可能破坏可用性的事情。产生结果是,安全补丁和更新———即使是针对最关键的漏洞,往往很少被快速应用,有时甚至根本不应用。
Perez-Etchegoyen说,在SAP环境中应用补丁意味着通过开发、QA、预生产以及所有其他多个层次来了解其影响。管理员确保补丁不会破坏现有流程或接口所需的时间通常会导致所需的补丁在发布后数年也未实施。
Schroeter补充说,由于缺乏信息,许多组织很难在现场SAP系统上识别和实现所需的补丁。他指出,管理员需要定期关注漏洞公开站点和数据库,并订阅资源,以便定期更新补丁信息。
5.不受保护的数据
如今,SAP环境几乎可以连接到任何东西,甚至几乎可以从任何地方直接或间接访问,并且许多SAP工作负载也开始转移到云上。
然而,通常实际的数据本身(尽管任务很关键)并没有得到保护。因为很少有公司会在传输或休息时对数据进行加密,甚至还会在加密过程中使数据暴露于不当访问和滥用的风险之中。
Haun说:“对于云计算和托管环境,他们错误地认为供应商正在实现网络加密和其他安全标准。”
當SAP数据库由第三方托管时,应该对其余数据进行加密,以防止不受信任的用户访问数据。他说:“许多组织利用托管和IaaS云平台,因此强烈建议对数据、事务日志和备份文件进行加密。”
6.密码管理不善
ERP系统和连接到它们的应用程序包含关键信息,但往往受到弱密码和密码管理实践的保护。使用默认密码或跨帐户使用相同密码保护的高度特权帐户的访问并不罕见。弱密码是跨应用程序的一个问题,在关键SAP环境中尤其有问题。
Haun说,一些组织不支持密码的基本标准,这可能导致帐户被入侵,黑客使用有效的用户帐户和密码造成无法检测到的损害。他建议:“应该配置SAP系统,使用户帐户密码变得复杂,并且每年要修改几次。”
超级用户和管理员密码不应该给普通用户使用,并被锁定在数字保险箱。Schroeter建议,组织应该实现更强大的控制,包括SSO、双因素和基于上下文的身份验证,而不是依赖于宏和基于文本的身份验证。
7.未能制定应急响应计划
对许多组织来说,面临的大问题是缺乏足够的危机管理计划。Schroeter说,很少有人有应对正在展开攻击的程序,也很少有人有应对危机的指挥系统。
他说,SAP的一项调查显示,企业担心数据丢失、灾难恢复能力以及ERP环境中的业务连续性,但很少有企业有应对危机的计划。
8.日志记录和审计不足
日志记录和审计对于实现跨SAP环境监视系统活动所需的可见性至关重要。它可以帮助管理员密切关注特权用户,并监控对应用程序、数据和数据库的访问以及对它们任何身份的更改。
Haun说,大多数组织没有提供足够的审计策略来跟踪SAP系统的关键操作。这包括应用服务器层和数据库层。他表示:“审计数据可以用于主动检测攻击,也可以在攻击后提供取证数据。”
Schroeter说,SAP本身已经为产品添加了很多安全功能,并且多年来一直以安全默认配置提供这些功能。该公司提供了有关配置漂移等关键主题的指导,以及如何处理安全补丁和为软件添加安全功能。他表示:“客户需要处理这个问题,并以整体的方式解决网络安全问题。”
与SAP应用程序一样,解决安全问题也很复杂。Schroeter指出,组织需要实现一个安全计划,确定风险的优先级,并找出一个正式的方法来减轻对SAP环境的威胁。
他说,SAP2018年与一家安全供应商进行的一项研究显示,犯罪分子对SAP应用程序的兴趣增强了。那些继续低估或忽视这种威胁的公司正在犯错误。“10KBlaze是我能找到的最好例子,说明了为什么组织需要开始处理这个问题,”Schroeter说。