为什么我会收到 Amazon EC2 实例的 GuardDuty UnauthorizedAccess 暴力攻击调查结果类型警报?

上次更新时间:2020 年 3 月 13 日

Amazon GuardDuty 检测到 Amazon Elastic Compute Cloud (Amazon EC2) 实例中出现 UnauthorizedAccess:EC2/RDPBruteForceUnauthorizedAccess:EC2/SSHBruteForce 调查结果类型警报。

简短描述

暴力攻击可能指示对您的 AWS 资源的未经授权问题。有关更多信息,请参阅未经授权的调查结果类型

解决方案

请按照以下说明操作,检查 GuardDuty 调查结果类型描述、调查结果 ID 和探测器 ID,以了解与暴力攻击相关的更多详细信息。

查看 GuardDuty 调查结果类型描述

按照说明查看并分析您的 GuardDuty 调查结果

在调查结果详细信息窗格中,记下与以下类似的调查结果类型标题:

“198.51.100.0 正在对 i-99999999 执行 RDP 暴力攻击。暴力攻击用于通过猜测 RDP 密码来获取对实例的未经授权访问。”

在本示例中,描述指示了受影响的 Amazon EC2 实例、暴力攻击的方向以及 IP 地址。

查看 GuardDuty 调查结果 ID 和探测器 ID

重要提示:开始之前,请确保您已安装配置 AWS 命令行界面 (AWS CLI)。

1.    打开 GuardDuty 控制台

2.    在导航窗格中,选择调查结果

3.    在调查结果类型中,选择 UnauthorizedAccess 调查结果类型。

4.    在调查结果详细信息窗格中,选择调查结果 ID

5.    在调查结果 JSON 中,记下 GuardDuty 调查结果和探测器 ID。

6.    运行以下 AWS CLI 命令:

注意:your-detector-idyour-findings-id 替换为 GuardDuty 探测器和调查结果 ID。

aws guardduty get-findings --detector-id your-detector-id --finding-ids your-findings-id --query 'Findings[].Service.Action.NetworkConnectionAction.ConnectionDirection'

您会收到类似如下内容的输出:

[
    "INBOUND"
]

7.    运行以下 AWS CLI 命令:

aws guardduty get-findings --detector-id your-detector-id --finding-ids your-findings-id --query 'Findings[].Service.Action.NetworkConnectionAction.RemoteIpDetails.IpAddressV4'

您会收到类似如下内容的输出:

[
    "198.51.100.0"
]

在本示例中,Amazon EC2 实例安全组允许 SSH/RDP 流量并且对公众开放。

要缓解此问题,您可以限制 SSH/RDP 流量,以仅允许白名单上的 IP 地址可以授权访问实例。

要限制 SSH 流量,请参阅为 Linux 实例添加入站 SSH 流量规则

要限制 RDP 流量,请参阅为 Windows 实例添加入站 RDP 流量规则

有关更多信息,请参阅修复遭盗用的 EC2 实例