安全行为分析对devops的好处

安全行为分析对devops的好处

云本地架构、持续集成和持续交付(CI/CD)、devops和站点可靠性工程(SRE)等技术和实践使组织能够创新并加速软件产品的交付。但是,它们也扰乱了传统的软件开发和维护生命周期(SDLC),并显著地改变了企业需要做什么才能成功地保护应用程序和业务服务。
为了帮助组织确保应用程序的安全交付,TrueFort开发了一种保护和监控云工作负载的方法,称为应用程序安全行为分析(ASBA)。ASBA基于三个关键组件:实时应用程序行为分析、CI/CD安全监视和运行时保护。

实时应用程序行为分析
业务应用程序的特征通常是它们的行为和与其他实体的关系的组合。
例如,一个典型的零售电子商务应用程序包括使用来自客户所在时区的已知API调用的服务之间的通信,以及来自与这些时区相关的网络的通信。web服务器、负载平衡器、缓存、文档存储和数据库之间也有同步的活动。
看起来ERP系统可能像一个电子商务应用程序。它可能具有相互连接的web、应用程序和数据库服务器,这些服务器具有相关的行为,例如将增加的数据库活动与增加的应用程序服务器活动链接起来。但与电子商务不同的是,ERP通常只由局域网中的用户访问,其特点是繁忙的、服务器端独有的周期,与月度报告周期和批处理相关。
恶意的内部人员和外部攻击者通常不知道或不关心这些行为上的细微差别和威胁,他们认为一旦他们突破了企业的边界,他们所做的任何事情都会被忽视。不幸的是,他们经常被忽视。
TrueFort平台通过全面分析业务应用程序的行为来弥补这一差距,从而构建“正常”活动的基线模型,以识别什么是异常和潜在的威胁。为了实现这一点,TrueFort监视每个工作负载上的数百个参数,包括它们的关系、依赖、流程和时间波动,并将这些数据与其他工作负载的数据关联起来。
捕获的遥测数据包括网络连接、流程细节、服务帐户、VM/服务器/容器上安装的文件系统,以及它们与其他基础设施和应用程序层以及上下游应用程序的关系。
基于这种全面的可见性和建立的正常基线,ASBA可以发现重要的异常,例如当其前端应用服务器空闲时,数据库变得异常繁忙——例如在Equifax数据被破坏期间发生的情况。偏离正常的基线可能表示一个恶意的内部或外部威胁参与者从一个意外的位置和在一个不寻常的时间访问网络。ASBA实时检测此类事件,以便快速响应、法医调查和自动修复。
SDLC和CI/CD安全监控
首先,CI/CD工具链已经成为攻击面。CI/CD访问公司的IP(代码、数据、配置、凭证),并且缺乏专用的安全包装,但是必须保护它不受内部威胁、外部攻击者和进程泄漏的影响。
虽然像Jenkins和Spinnaker这样的CI工具非常有价值,通常用于自动化开发,包括工作流、质量检验关、提升、缺陷跟踪等等,但是这里的失败或攻击有可能对业务造成灾难性的破坏。
例如,随着以分钟或秒为单位的恢复时间的增加,代码推送、升级和恢复变得越来越自动化。恶意的内部人员或外部人员对CI工具链的破坏可能会无限期地停止软件构建活动,并阻止失败服务的恢复。
ASBA可以对工具链和它们所交付的业务流程进行概要分析、检测、警告,并在损害变得普遍之前减轻损害。具体来说,ASBA可以监视多个元素,包括访问源存储库的人员或内容、从Nexus获取的人员、对Jenkins工作流的更改的地方,等等。ASBA还可以提供法医数据,并最终阻止未经授权的活动。
第二,第三方代码的使用在开发过程中会带来安全风险,尤其是随着开源组件的使用增加。当这些构建块和复杂依赖树中的漏洞与扫描器的相对无效相结合时,就会发现可利用的缺陷,安全风险就会显著增加。
TrueFort及其ASBA方法通过检测行为异常为运行时应用程序保护提供了最后一道防线和保证,而不考虑用于执行攻击的方法,无论是第三方或自定义代码中的漏洞还是其他原因。
第三,虽然产品团队通常采用测试驱动开发(TDD)来自动化软件测试,但是相对而言,很少包含足够的安全性验证。这包括评估工件(容器、WAR文件等)、代码和api的实现,以确保它们在发布之前是安全的(左移)。虽然代码质量和代码分析可能提供安全方面的好处,但它们不能被视为包罗万象。
ASBA可以提供一个关键的反馈循环来增强验证阶段的防御。
例如,在2019年7月8日,Ruby库strong_password出现了一个零日漏洞。这个零日在漏洞数据库中不被识别,因此依赖于这些漏洞feed的静态和动态代码分析工具不太可能检测到问题。防火墙也有同样的局限性。也就是说,防火墙通过阻止已知的威胁(而不是零日攻击)来保护边界和防止数据泄漏。
相反,ASBA会在POST活动中检测到一个异常的URL并发出警报,而这个异常的URL是在这个库被破坏之后才出现的。在这个例子中,ASBA通过减少风险、影响和可能性来增加验证阶段的强度和深度。
测试阶段(UAT、load、A:B)也是开始使用ASBA分析正常行为的理想阶段,因为应用程序一经构建就可以正常工作。通过观察用户接受、压力测试等过程中的行为,可以构建安全策略来检测、预防和保护。例如,工作负载模拟和弹性工具(如Chaos Monkey)生成流量和有价值的数据集,这些数据集可用于通知SRE、开发事件响应流程、实现微区隔策略和自动化响应工作流。
运行时的保护
理想情况下,部署的应用程序将包含在开发和测试期间学到的所有安全经验。这似乎是显而易见的,但往往被部分或完全忽视。
ASBA通过在反馈回路中提供洞见来解决测试和部署之间的差距,从而帮助优化站点可靠性工程,从而实现服务水平的目标。
与传统的应用程序性能管理(APM)或日志分析解决方案不同,应用程序安全行为分析的实时警报和取证审计功能提供了可操作的答案,并消除了查询非结构化数据寻找线索和碎屑的需要。通过这种方式,ASBA提供了对整个SDLC以及部署和运行应用程序时的威胁的可见性。