Slack审计日志与异常检测技术解析

本文详细介绍了Slack企业版审计日志的功能特性、API接口设计以及异常检测系统的技术实现,包括如何通过关联分析多个异常事件来识别潜在安全威胁,并提供了具体的UI操作示例和会话终止等安全响应措施。

Slack审计日志是什么?

与许多软件即服务(SaaS)产品类似,Slack为企业网格客户提供审计日志,记录实体在平台上的操作行为。例如用户登录、更新个人资料、应用下载文件等。审计日志捕获的操作列表非常广泛,建议定期查看是否有新增内容。文档中还提供了审计日志示例并详细讨论了各字段含义。

Slack审计日志的获取途径

组织管理员、所有者和具有审计日志管理员角色的用户可通过审计日志仪表板(工具和设置 → 管理审计日志)访问审计日志。审计日志还提供API接口,许多供应商都提供了将审计日志接入其平台的连接器,例如:

  • Splunk
  • AWS AppFabric
  • DataDog

审计日志API支持按生成时间、操作(最多指定30个)、执行者和实体等属性进行过滤。例如,如果企业只想获取用户登录事件,可在调用API时指定user_login作为操作参数。

异常事件

什么是异常?

审计日志流中包含异常事件(操作类型为anomaly)。与其他审计日志事件不同,异常事件不记录实体在平台上的具体操作,而是表明Slack的分析管道检测到实体执行了异常操作(或操作集),或者实体执行操作的环境存在异常。异常可作为Slack工作区中异常或潜在可疑活动的指示器。

如何使用异常?

与任何新的事件源一样,Slack异常需要检测与响应团队进行调查、实验和分析后才能投入运营。通常,异常不应直接作为事件上报,它们表明发生了意外情况,可能需要进一步调查。异常的重要性因组织的策略和允许活动而异。

允许列表CIDR范围和ASN

如果组织知道某些IP地址或网络范围与合法活动相关,Slack提供了允许列表这些来源的方式。这些API端点允许添加受信任的CIDR范围和ASN,为微调异常检测和减少异常数量提供了灵活选项。

关联异常

关联多个异常可为潜在安全问题提供有价值的洞察。例如,当user_agent异常与excessive_downloads异常同时出现时,可能表明正在使用爬取工具。如果这些异常还伴随ip_addresssession_fingerprint异常,情况可能更严重,可能表示外部方已获取用户cookie并用于爬取数据。

聚合异常

我们可以聚合某些异常以发现感兴趣的场景。例如,组织可能观察到多个用户每天生成excessive_downloads异常,但这些异常可能不代表恶意活动。通过检查用户在一段时间内生成的异常数量并与历史标准比较,可帮助发现用户执行不需要活动(如大量爬取数据)的情况。

审计日志事件的上下文

异常日志的量级通常比审计日志低至少两个数量级。如果组织希望关注异常日志但无法处理全部审计日志,可使用前述方法仅过滤异常。但我们强烈建议尽可能使用完整的审计日志,以便在调查异常时获得最全面的上下文信息。

审计日志UI示例

如需在不使用外部服务的情况下查看Slack审计日志,可通过工具和设置 → 管理审计日志访问UI界面。以即将离开虚构公司Acme Corp的销售人员Matt的活动为例:

首先加载审计日志主标签页,然后切换到安全检测标签页查看Matt生成的任何异常。通过点击•••菜单并选择"查看完整日志详情",可获取有关异常的更多信息。

终止用户活动会话

如果发现与用户账户相关的可疑活动并希望立即采取措施,可直接从审计日志仪表板终止用户的活动会话。导航到相应用户的特定异常日志条目,点击•••菜单并选择"退出Slack",此操作将立即使用户的所有活动会话失效。

其他检测思路

即使未为Matt的活动生成ip_address异常,分析师仍应调查异常中包含的IP地址是否预期。同样,如果在此类异常附近为Matt生成了session_fingerprint异常,可能表明Matt的会话cookie已被窃取。

与异常(如excessive_downloadsuser_agentip_address)关联的用户代理可能是爬取或其他不需要活动发生的良好信号。我们可以通过展示具有意外用户代理的异常来操作这一洞察。

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计