View a markdown version of this page

修复可能失陷的数据库 - Amazon GuardDuty
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)。

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

修复可能失陷的数据库

GuardDuty 在您启用支持的数据库后生成的RDS 保护调查发现类型,表明您的登录行为可能存在可疑和异常。RDS 防护使用 RDS 登录活动,通过识别登录尝试中的异常模式来 GuardDuty 分析和描述威胁。

注意

您可以从 GuardDuty 主动查找类型 中选择某个调查发现类型来访问其完整信息。

请按照以下建议步骤修复您的 Amazon 环境中可能遭到入侵的 Amazon Aurora 数据库。

通过成功登录事件修复可能受攻击的数据库

以下建议的步骤可以帮助您修复可能受攻击的 Aurora 数据库,该数据库表现出与成功登录事件相关的异常行为。

  1. 确定受影响的数据库和用户。

    生成的 GuardDuty 结果提供了受影响数据库的名称和相应的用户详细信息。有关更多信息,请参阅 调查发现详细信息。

  2. 确认这种行为是预期的还是意外的。

    以下列表列出了可能导致生成调查结果 GuardDuty 的潜在场景:

    • 经过很长时间后才登录到其数据库的用户。

    • 偶尔登录数据库的用户,例如,每个季度登录一次的财务分析师。

    • 尝试登录成功的潜在可疑攻击者可能会攻击数据库。

  3. 如果行为出乎意料,请开始此步骤。

    1. 限制数据库访问

      限制可疑账户和登录活动源的数据库访问。有关更多信息,请参阅 修复可能遭泄露的凭证 和 限制网络访问。

    2. 评测影响并确定访问了哪些信息。

通过失败登录事件修复可能受攻击的数据库

以下建议的步骤可以帮助您修复可能受攻击的 Aurora 数据库,该数据库表现出与失败登录事件相关的异常行为。

  1. 确定受影响的数据库和用户。

    生成的 GuardDuty 结果提供了受影响数据库的名称和相应的用户详细信息。有关更多信息,请参阅 调查发现详细信息。

  2. 确定失败登录尝试源。

    生成的 GuardDuty 调查结果在调查结果面板的 “Acto r” 部分下提供 IP 地址和 ASN 组织(如果是公共连接)。

    自治系统(AS)是由一个或多个网络运营商运行的一个或多个 IP 前缀(可在网络上访问的 IP 地址列表)组成的群组,这些运营商维护单一、明确定义的路由策略。网络运营商需要自治系统号(ASN)来控制其网络中的路由,并与其他互联网服务提供商(ISP)交换路由信息。

  3. 确认这种行为是否是意料之外的。

    检查此活动是否表示试图获得对数据库的其他未经授权的访问,如下所示:

    • 如果源是内部的,请检查应用程序是否配置错误并重复尝试连接。

    • 如果是外部攻击者,则检查相应的数据库是否面向公众或配置错误,从而允许潜在的恶意行为者暴力破解常用用户名。

  4. 如果行为出乎意料,请开始此步骤。

    1. 限制数据库访问

      限制可疑账户和登录活动源的数据库访问。有关更多信息,请参阅 修复可能遭泄露的凭证 和 限制网络访问。

    2. 执行根本原因分析并确定可能导致此活动的步骤。

      设置警报,以便在活动修改网络策略并造成不安全状态时收到通知。有关更多信息,请参阅《Amazon Network Firewall 开发人员指南》中 Amazon Network Firewall的防火墙策略。

通过异常的泄露活动修复可能受损的数据库

以下推荐步骤可以帮助您修复可能遭到入侵的 Aurora 数据库,该数据库表现出与数据泄露事件相关的异常行为。

  1. 确定受影响的数据库和用户。

    生成的 GuardDuty 结果提供了受影响数据库的名称和相应的用户详细信息。有关更多信息,请参阅 调查发现详细信息。

  2. 确定访问的数据的范围。

    查看可用的 RDS 数据活动日志,以确定异常用户在调查结果所示的时间窗口内访问了哪些表和行。评估可能被泄露的数据的敏感性。

  3. 确认这种行为是否是意料之外的。

    检查此活动是否代表合法的操作行为,如下所示:

    • 如果源是内部的,请检查计划的 ETL 作业、报告工具或备份过程是否可能是查询量增加的原因。

    • 如果这是外部行为者或以前看不见的数据库属性,请检查相应的数据库凭据是否可能已在外部公开或共享。

    • 检查卷和看不见的属性(IP 地址、ASN、应用程序名称)的组合是否与任何已知的操作变化一致。

  4. 如果行为出乎意料,请开始此步骤。

    撤消访问权限并轮换证书。

    立即更改受影响数据库用户的密码并撤消活动会话。如果用户拥有更高的权限,请暂时将其权限限制为只读或完全删除访问权限,直到调查完成。

  5. 评估业务影响。

    确定受影响用户可以访问的数据,确定是否有任何敏感或受监管的数据(PII、财务、医疗保健)可能被泄露,并遵循贵组织的数据泄露通知程序(如果适用)。

  6. 限制网络访问。

    限制可疑账户和此活动来源的数据库访问权限。如果尚未配置,请将数据库置于私有 VPC 中,并限制安全组规则,使其仅允许来自必要来源的流量。有关更多信息,请参阅 限制网络访问。

  7. 执行根本原因分析并确定可能导致此活动的步骤。

    设置警报,以便在活动修改网络策略并造成不安全状态时收到通知。有关更多信息,请参阅《Amazon Network Firewall 开发人员指南》中 Amazon Network Firewall的防火墙策略。

使用异常破坏性活动修复可能受损的数据库

以下推荐步骤可以帮助您修复可能遭到入侵的 Aurora 数据库,该数据库表现出与破坏性DELETE或DROP事件相关的异常行为。

  1. 确定受影响的数据库和用户。

    生成的 GuardDuty 结果提供了受影响数据库的名称和相应的用户详细信息。有关更多信息,请参阅 调查发现详细信息。

  2. 确定破坏性行动的范围。

    查看可用的 RDS 数据活动日志,以确定异常用户在调查结果所示的时间窗口内删除或删除了哪些表、行或数据库对象。确定丢失的数据是否可以从现有备份或快照中恢复。

  3. 确认这种行为是否是意料之外的。

    检查此活动是否代表合法的操作行为,如下所示:

    • 如果源是内部的,请检查计划的维护作业、清理脚本或迁移过程是否可能导致DELETE或DROP操作。

    • 如果这是外部行为者或以前看不见的数据库属性,请检查相应的数据库凭据是否已被泄露或泄露。

    • 检查破坏性操作和看不见的属性(IP 地址、ASN、应用程序名称)的组合是否与任何已知的操作更改一致。

  4. 如果行为出乎意料,请开始此步骤。

    撤消访问权限并轮换证书。

    立即更改受影响数据库用户的密码并撤消活动会话。在调查完成之前,请移除用户DROP和DELETE权限,以防止进一步破坏数据。

  5. 启动数据恢复。

    如果确认数据丢失,请从自动备份中启动时间点恢复或从最新的快照恢复。对于 Amazon Aurora,您可以使用回溯功能将数据库回放到破坏性活动发生之前的某个时间。对于 Amazon RDS,使用时间点恢复来恢复到事件发生前的某个点。

  6. 限制网络访问并强化权限。

    限制可疑账户和此活动来源的数据库访问权限。如果尚未配置,请将数据库置于私有 VPC 中,并限制安全组规则,使其仅允许来自必要来源的流量。查看 IAM 策略和数据库用户权限以强制执行最低权限访问权限,并在 RDS 实例上启用删除保护(如果尚未启用)。有关更多信息,请参阅 限制网络访问。

  7. 执行根本原因分析并确定可能导致此活动的步骤。

    设置警报,以便在活动修改网络策略并造成不安全状态时收到通知。有关更多信息,请参阅《Amazon Network Firewall 开发人员指南》中 Amazon Network Firewall的防火墙策略。

修复可能遭泄露的凭证

GuardDuty 调查结果可能表明,当调查结果中确定的用户执行了意外的数据库操作时,受影响数据库的用户凭据已被泄露。您可以在控制台的调查发现面板中的 RDS DB 用户详细信息部分或调查发现 JSON 的 resource.rdsDbUserDetails 中识别用户。这些用户详细信息包括用户名、使用的应用程序、访问的数据库、SSL 版本和身份验证方法。

限制网络访问

GuardDuty 调查结果可能表明,除了您的应用程序或虚拟私有云 (VPC) 之外,还可以访问数据库。如果调查发现中的远程 IP 地址是意外的连接源,请对安全组进行审计。附加到数据库的安全组列表可在https://console.aws.amazon.com/rds/控制台的安全组下或调查结果 JSON resource.rdsDbInstanceDetails.dbSecurityGroups 中找到。有关配置安全组的更多信息,请参阅《Amazon RDS 用户指南》中的使用安全组控制访问。

如果使用的是防火墙,请通过重新配置网络访问控制列表(NACL)来限制对数据库的网络访问。有关更多信息,请参阅《Amazon Network Firewall 开发人员指南》中 Amazon Network Firewall的防火墙。