AWS GuardDuty
Rapid7允许您将InsightIDR与AWS GuardDuty集成,以便接收第三方警报。
在你开始之前
GuardDuty以CloudWatch事件的形式生成数据,CloudWatch事件必须通过SQS队列发送给InsightIDR。在AWS文档中了解更多CloudWatch事件:https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/WhatIsCloudWatchEvents.html
要将GuardDuty与InsightIDR整合,请完成以下任务:
- 打开GuardDuty。
- 创建一个新的SQS队列,GuardDuty将向该队列发送数据,一旦消息被处理,InsightIDR将从该队列读取和删除消息,因为它定期轮询。确保这个队列是专为InsightIDR使用的。
- 如果对SQS队列进行了加密,请准备解密密钥以便在后续步骤中使用。
- 基于下面的示例,为Rapid7创建一个新的IAM Policy,以便向SQS队列发送HTTP请求:
我新政策
1{2“版本”:“2012-10-17”,3.“声明”:[4{5“效应”:“允许”,6“行动”(7“sqs: ReceiveMessage”,8“sqs: DeleteMessage”9],10“资源”:(11“攻击:aws: sqs: *: YourAccountId: GuardDutySqsQueueNameGoesHere”12]13}14]15}
- 新建一个只属于步骤3中创建的IAM policy的IAM User。这个用户应该具有从上面的SQS队列进行receiveMessage和deleteMessage调用的权限。
- 如果加密了SQS队列,请转到IAM >加密密钥并选择SQS队列使用的解密密钥。下IAM >关键用户,添加在步骤4中创建的用户。
因为这个IAM User将访问您的数据,所以建议限制访问。
- 制作User时,将密钥复制到安全的地方,以便在InsightIDR中配置GuardDuty时使用。
- 在AWS CloudWatch中,创建一个带有事件模式的新规则:
带有事件模式的新规则
1{2“源”:(3.“aws.guardduty”4]5}
- 将步骤2中创建的SQS队列添加到步骤7中创建的CloudWatch规则的目标中。
- 如果加密了SQS队列,则必须将JSON添加到密钥策略中。为此,转到AWS控制台并导航到密钥管理服务>您的SQS加密密钥>编辑策略.
- 将以下JSON添加到关键策略:
关键政策
1{2“Sid”:“允许CWE使用密钥”,3.“效应”:“允许”,4“主要”:{5“服务”:“events.amazonaws.com”6},7“行动”(8公里:解密”,9“公里:GenerateDataKey”10],11“资源”:“*”12}
完成配置后,当GuardDuty生成一个警报时,警报将通过CloudWatch进入SQS队列。11.要验证这一点,请转到GuardDuty >设置>一般>生成样本发现.
有关故障诊断信息,请参见AWS CloudWatch信息:https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/CWE_Troubleshooting.html#SQSEncrypted.
此时,您应该看到队列上有几个可用的消息。
配置该事件源前
Rapid7强烈建议手动从队列中删除这些示例消息,因为它们将在InsightIDR平台中生成错误警报。
如何配置事件源
- 从仪表板中选择数据收集在左边的菜单上。
- 当出现“数据采集”页面时,单击设置事件源下拉选择添加事件源.
- 从“第三方提醒”部分,单击AWS警卫任务图标。出现“添加事件源”面板。
- 选择收集器和事件源。如果需要,还可以命名事件源。
- 选择您的凭证,或创建一个新的凭证.您输入的凭据将是访问密钥和秘密密钥,它们对应于具有创建权限的AWS IAM User
receiveMessage
和deleteMessage
调用来自上面的SQS队列。- Access Key:您创建的具有IAM权限的用户名
- Secret Key:用户创建的与IAM权限对应的密码
- URL: SQS队列的URL。当您在AWS控制台中选择队列时,这是可见的。这看起来类似于https://sqs.us-east-1.amazonaws.com/your-queue-name
- 你可以选择使用EC2我角色.
- 选择保存.
这个页面对你有帮助吗?