AWS RDS 数据库实例公开

编辑

识别创建或修改 AWS RDS 数据库实例以启用公共访问的行为。数据库实例可能包含敏感数据,如果与未经授权的账户共享或公开,则可能被滥用。攻击者可能会在数据库实例上启用公共访问,以维持持久性或通过绕过访问控制来逃避防御。

规则类型: eql

规则索引:

  • filebeat-*
  • logs-aws.cloudtrail-*

严重性: 中

风险评分: 47

运行频率: 5 分钟

搜索索引范围: now-6m (日期数学格式,另请参阅 额外回溯时间)

每次执行的最大警报数: 100

参考:

标签:

  • 域: 云
  • 数据源: AWS
  • 数据源: 亚马逊网络服务
  • 数据源: AWS RDS
  • 资源: 调查指南
  • 用例: 威胁检测
  • 战术: 持久性
  • 战术: 防御规避

版本: 2

规则作者:

  • Elastic

规则许可证: Elastic License v2

调查指南

编辑

分类和分析

调查 AWS RDS 数据库实例公开

此规则识别何时创建或修改 RDS 数据库实例以启用公共访问。虽然公开访问的数据库实例是一种常见做法,但攻击者可能会利用此功能在受感染的环境中维持持久性或逃避防御。

可能的调查步骤

  • 识别行为者:查看 aws.cloudtrail.user_identity.arnaws.cloudtrail.user_identity.access_key_id 字段,以识别谁进行了更改。验证此行为者是否通常执行此类操作,以及他们是否具有必要的权限。
  • 审查创建/修改事件:识别涉及的数据库实例并审查事件详细信息。查找将 publiclyAccessible 参数设置为 true 的 ModifyDBInstanceCreateDBInstanceCreateDBCluster 操作。
  • 请求和响应参数:检查 CloudTrail 事件中的 aws.cloudtrail.request_parameters 字段,以识别数据库实例标识符以及对实例所做的任何其他修改。
  • 验证创建/修改的实例:检查已创建或修改的数据库实例及其内容,以确定其中存储的数据的敏感性。
  • 结合最近的更改进行关联:将此事件与 RDS 数据库或集群配置和部署中的最近更改进行比较。查找任何其他最近的权限更改或不寻常的管理操作。
  • 与其他活动关联:在此事件前后搜索相关的 CloudTrail 事件,以查看同一行为者或 IP 地址是否参与了其他潜在的可疑活动。
  • 采访相关人员:如果修改是由用户发起的,请与负责管理数据库实例的人员或团队核实此操作的意图和授权。

误报分析

  • 合法的实例配置:确认数据库实例的创建或修改是否与合法任务一致。
  • 一致性检查:将此操作与用户或组织内执行的类似操作的历史数据进行比较。如果此操作与过去合法的活动一致,则可能表示误报。

响应和补救

  • 立即审查和撤销:如果更改是未经授权的,请更新实例属性以删除公共访问并将其恢复到以前的状态。确定附加的安全组是否已被修改以允许额外访问,并恢复任何未经授权的更改。
  • 增强监控和警报:调整监控系统以针对类似操作发出警报,特别是那些涉及敏感数据或权限的操作。
  • 审计实例和策略:对所有实例和相关策略进行全面审计,以确保它们遵守最小权限原则。
  • 策略更新:审查并可能更新您的组织关于数据库实例访问的策略,以加强控制并防止未经授权的访问。
  • 事件响应:如果确认存在恶意意图,请将其视为数据泄露事件并启动事件响应协议。这包括进一步调查、遏制和恢复。

其他信息

有关管理数据库实例和保护 AWS 环境的更多指导,请参阅 AWS RDS 文档和 AWS 安全最佳实践。此外,请查阅以下资源,以获取有关数据库实例安全的具体详细信息:- AWS RDS ModifyDBInstance

规则查询

编辑
any where event.dataset == "aws.cloudtrail"
    and event.provider == "rds.amazonaws.com"
    and event.outcome == "success"
    and (
        (event.action == "ModifyDBInstance" and stringContains(aws.cloudtrail.request_parameters, "publiclyAccessible=true"))
        or
        (event.action in ("CreateDBInstance", "CreateDBCluster") and stringContains(aws.cloudtrail.request_parameters, "publiclyAccessible=true"))
    )

框架: MITRE ATT&CKTM