返回

检测即代码的 5 个好处

发布时间:2022-07-03 13:54:52 370
# 数据# 攻击# 软件# 工具# 软件

TLDR(灾难恢复):

采用一种现代的、测试驱动的方法,通过检测作为代码来保护您的组织。

在过去十年中,威胁检测已成为业务关键,甚至更为复杂。随着企业转向云,手动威胁检测流程已无法跟上。团队如何大规模自动化安全分析并解决威胁业务目标的挑战?答案在于将威胁检测视为软件或代码。

观看Panther的随需应变网络研讨会:使用Cedar将检测作为代码扩展安全性,了解Cedar如何使用Panther利用检测作为代码构建高信号警报。

作为代码的检测:一种新的(Hope)范式检测定义了分析安全日志数据以识别攻击者行为的逻辑。当规则匹配时,将向您的团队发送警报,以进行遏制或调查。

什么是代码检测?

作为代码的检测是一种现代、灵活和结构化的方法,用于编写将软件工程最佳实践应用于安全性的检测。通过采用这种新范式,团队可以构建可扩展的流程来编写和强化检测,以识别快速扩展环境中的复杂威胁。

采用代码驱动工作流的好处

针对特定环境和系统进行微调的威胁检测程序最具影响力。通过将检测处理为可以测试、检查到源代码控制中的编写良好的代码,以及同行审查的代码,团队可以生成更高质量的警报,以减少疲劳并快速标记可疑活动。

1 、 使用编程语言构建自定义、灵活的检测

用公认的、灵活的、表达性强的语言(如Python)编写检测提供了一些优势,而不是使用过于有限的领域特定语言(DSL)。使用Python等语言,您可以编写更复杂和定制的检测,以满足企业特定的需求。随着复杂性的增加,这些规则也更易于阅读和理解。

这种方法的另一个好处是利用安全社区开发的一组丰富的内置库或第三方库与API交互或处理数据,这提高了检测的有效性。

2、测试驱动开发(TDD)

检测代码的适当QA可以使团队尽早发现检测盲点,覆盖错误警报的测试,并提高检测效率。TDD方法允许安全团队像攻击者一样思考,记录这些知识,并管理一个内部存储库,以了解攻击者的生命周期。

TDD的优点不仅仅是验证代码的正确性。用于编写检测的TDD方法提高了检测代码的质量,并支持更模块化、可扩展和灵活的检测。工程师可以轻松地对其检测进行更改,而不用担心破坏警报或影响日常操作。

3 与版本控制系统协作

在编写新的检测或修改它们时,版本控制允许团队快速轻松地恢复到以前的状态。它还确认团队正在使用最新的检测,而不是引用过时或错误的代码。版本控制还可以帮助为触发警报的特定检测提供所需的上下文,或帮助确定检测何时更改。

随着时间的推移,新的和额外的数据进入系统,检测也必须改变。变更控制流程对于帮助团队根据需要处理和调整检测至关重要,同时确保所有变更都有良好的记录和审查。

4 用于可靠检测的自动化工作流

持续集成/持续部署(CI/CD)管道对于长期以来希望将安全性进一步向左移动的安全团队来说是有益的。使用CI/CD管道有助于实现以下两个目标:

  • 消除团队之间的竖井,因为他们在一个公共平台上共同工作,代码审查彼此的工作,并保持组织性。
  • 为您的安全检测提供自动化测试和交付管道。团队可以通过专注于构建微调的检测来保持敏捷。而不是手动测试、部署并确保检测没有过度优化,这可能会触发错误警报。

5、可重用代码

最后但并非最不重要的一点是,作为代码的检测可以跨大量检测提高代码的可重用性。随着时间的推移,随着团队编写大量的检测结果,他们开始看到特定的模式出现。工程师可以重用现有代码,在不同的检测中执行相同或非常相似的功能,而无需从头开始。

代码可重用性可以是检测编写的一个重要部分,它允许团队在检测之间共享功能,或者修改和适应特定用例的检测。例如,假设您需要在多个位置重复一组允许/拒绝列表(比如访问管理)或特定的处理逻辑。在这种情况下,可以使用Python等语言中的助手在检测之间共享函数。

黑豹简介

Panther是一个安全分析平台,旨在缓解传统SIEMs的问题。Panther是由安全工程师为安全工程师建造的。Panther并没有发明另一种专用语言来表达检测逻辑,而是为安全团队提供了一个Python规则引擎来编写表达性威胁检测,并在云级别自动检测和响应。Panther的模块化和开放式方法提供了简单的集成和灵活的检测,以帮助您构建现代安全操作管道。

Panther中的检测作为代码工作流

Panther提供可靠且有弹性的检测,可以轻松:

  • 用Python编写富有表现力且灵活的检测,以满足企业特定的需求。
  • 将日志结构化并规范化为一个严格的模式,该模式支持Python检测和SQL查询。
  • 对海量安全数据执行实时威胁检测和电源调查。
  • 受益于200多个预先构建的检测,这些检测映射到特定的威胁、可疑活动和安全框架,如MITRE ATT&CK。

Panther中的检测作为代码工作流

Panther中的一个示例检测

在Panther中编写检测时,首先要使用一个rule()函数来标识要标识的特定行为。例如,假设您希望在怀疑存在暴力Okta登录时发出警报。以下检测有助于识别黑豹的这种行为:

黑豹中的Okta暴力登录规则

在上述示例中:

  • rule()函数接受“event”的一个参数并返回一个布尔值。
  • 函数的作用是:控制发送给分析师的生成的警报消息。然后可以对事件中的值进行插值,以添加有用的上下文。

可以直接在Panther UI中启用和测试规则,也可以使用Panther分析工具以编程方式修改和上载规则,该工具允许您通过命令行界面(CLI)测试、打包和部署检测。为了协助事件分类,Panther规则包含元数据,如严重性、日志类型、单元测试、Runbook等。

快速入门

您是否充分利用所有安全数据来检测威胁和可疑活动?了解如何使用Panther Enterprise保护您的云、网络、应用程序和端点。今天请求演示。

 

特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报
评论区(0)
按点赞数排序
用户头像
精选文章
thumb 中国研究员首次曝光美国国安局顶级后门—“方程式组织”
thumb 俄乌线上战争,网络攻击弥漫着数字硝烟
thumb 从网络安全角度了解俄罗斯入侵乌克兰的相关事件时间线