在InsightIDR中设置AWS CloudTrail事件源

亚马逊网络服务(AWS)是一种云服务集成,允许您跟踪企业云服务的使用情况。无论您使用的是Amazon的Standard还是GovCloud区域,您都可以配置AWS CloudTrail,将日志发送到InsightIDR。

您还可以使用SQS配置AWS CloudTrail

当您使用AWS CloudTrail API进行配置时,InsightIDR会定期查询API以查看哪些内容发生了更改,然后下载日志。当您配置SQS时,InsightIDR通过SQS通知接收消息,当S3日志创建并准备下载时。这两种方法都工作得很好,但是当您使用SQS方法时,InsightIDR通常能够更快地收集日志,因为S3文件一准备好就会创建消息。有关如何使用SQS配置AWS CloudTrail的说明,请参阅AWS CloudTrail SQS文档。

设置此事件源

  1. 配置您的AWS设置
  2. 在InsightIDR中设置此事件源

配置您的AWS设置

在将日志从AWS CloudTrail发送到InsightIDR之前,您必须启用对AWS区域的访问,创建IAM策略、组和用户,并设置S3桶策略。配置AWS设置

  1. 启用对AWS区域的访问
  2. 创建我的政策
  3. 创建我组
  4. 创建并配置IAM User
  5. 设置S3桶策略

步骤1:启用对AWS区域的访问

InsightIDR支持标准AWS区域和GovCloud区域。

AWS S3地区

取决于CloudTrail日志存储的区域,收集器需要到达以下URL来收集日志:

S3地区

URL

US_STANDARD

https://s3.amazonaws.com

US_WEST_OREGON

https://s3-us-west-2.amazonaws.com

US_EAST_OHIO

http://s3-us-east-2.amazonaws.com

US_WEST_N_CALIFORNIA

https://s3-us-west-1.amazonaws.com

CA_CENTRAL

https://s3-ca-central-1.amazonaws.com

EU_IRELAND

https://s3-eu-west-1.amazonaws.com

EU_LONDON

https://s3-eu-west-2.amazonaws.com

EU_PARIS

https://s3-eu-west-3.amazonaws.com

EU_FRANKFURT

https://s3.eu-central-1.amazonaws.com

AP_MUMBAI

https://s3-ap-south-1.amazonaws.com

AP_SEOUL

https://s3-ap-northeast-2.amazonaws.com

AP_SINGAPORE

https://s3-ap-southeast-1.amazonaws.com

AP_SYDNEY

https://s3-ap-southeast-2.amazonaws.com

AP_TOKYO

https://s3-ap-northeast-1.amazonaws.com

SA_SAO_PAULO

https://s3-sa-east-1.amazonaws.com

在所有标准区域启用CloudTrail

为了获得CloudTrail监控的最大覆盖率,您应该在所有标准区域中启用CloudTrail,即使您没有在所有区域中运行任何EC2实例或其他AWS资源。接下来,这有助于确保如果攻击者破坏您AWS帐户中的资源,并且他们在其他区域创建或修改资源,您将能够监视和警告该行为。

使CloudTrail:

  1. 在AWS控制台中,转到CloudTrail→路径→创建新的路径
  2. 在“路径名称”字段中为您的路径添加一个名称。
  3. 对于“Apply trail to all regions”选项,请选择是的
  4. 对于“Create a new S3 bucket”选项,选择是的
  5. 为S3桶添加一个名称。为以后的步骤记录这个。
  6. 点击创造。

政府云计算市场区域

如果您使用AWS GovCloud,您可以将数据发送到InsightIDR进行进一步分析。

请注意,虽然AWS GovCloud遵守联邦加密要求,但InsightIDR服务器托管在标准AWS中,您发送到InsightIDR的任何数据也将存储在那里。

您可以从以下GovCloud区域发送数据到InsightIDR:

政府云计算市场区域

URL

美国东部(政府云计算市场)

s3 - website.us gov -东- 1. amazonaws.com

美国西部(政府云计算市场)

s3 - website.us gov -西方- 1. amazonaws.com

使政府云计算市场区域

有关启用GovCloud区域的信息,请参见https://docs.aws.amazon.com/govcloud-us/latest/UserGuide/verifying-cloudtrail.html

步骤2:创建IAM Policy

创建IAM policy来控制权限和访问。

创建IAM policy。

  1. 在AWS控制台中,转到IAM→Policies→Create Policy→Create Your Own Policy
  2. 为您的策略添加名称和描述。把这些记下来,以便以后使用。
  3. 使用下面的policy模板输入策略,该策略基于最小权限原则,只允许访问为CloudTrail日志创建的特定S3桶。
          
文本
1
2
“版本”:“2012-10-17”,
3.
“声明”:[
4
5
“效应”:“允许”,
6
“行动”(
7
“s3: *”,
8
“s3:列表*”
9
],
10
“资源”:(
11
“攻击:aws: s3::: CloudTrailsS3BucketNameGoesHere”,
12
“攻击:aws: s3::: CloudTrailsS3BucketNameGoesHere / *”
13
14
15
16

步骤3:创建IAM组

创建IAM组,用于控制用户对某个组的访问权限。

  1. 在AWS控制台中,转到IAM→组→创建新组。
  2. 创建“组名”,并选择下一个步骤
  3. 选择前面创建的IAM Policy并选择下一个步骤。

步骤4:创建并配置IAM User

创建可以访问组并继承权限的用户。

创建用户。

  1. 在AWS控制台中,转到IAM→User→Add User。
  2. 添加用户名并选择“访问类型”下的“**编程访问**”并选择下一个:权限。
  3. 选择集团您之前创建的,并选择下一个:审查。
  4. 在“完成”页,选择显示秘密访问密钥。
  5. 将此用户的访问密钥和秘密密钥复制并保存在一个安全的位置,以便以后使用。

步骤5:设置S3 Bucket Policy

最后,为S3桶创建一个策略,规定用户和S3桶数据彼此关联。您可以通过检查Amazon Resource Name (ARN)来查看数据所在的区域。有关arn以及如何为GovCloud格式化的更多信息,请参见https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-arn-format.html

创建桶策略。

  1. 在AWS控制台中,进入桶的政策歌珥配置权限页,并查找与该访问相关联的用户的ARN
  1. 找到为CloudTrail日志配置的桶。
  2. 进入“S3”中的桶属性,单击*编辑桶政策。
  3. 添加列表*GetObject与用户的ARN匹配的桶的权限。
  4. 点击保存
          
文本
1
2
“版本”:“2012-10-17”,
3.
“声明”:[
4
5
“席德”:“AWSCloudTrailAclCheck20150319”,
6
“效应”:“允许”,
7
“主要”:{
8
“服务”:“cloudtrail.amazonaws.com”
9
},
10
“行动”:“s3: GetBucketAcl”,
11
"Resource": "arn:aws:s3:::CLOUDTRAILS s3桶名"
12
},
13
14
“席德”:“AWSCloudTrailWrite20150319”,
15
“效应”:“允许”,
16
“主要”:{
17
“服务”:“cloudtrail.amazonaws.com”
18
},
19
“行动”:“s3: propertynames”,
20.
"Resource": "arn:aws:s3:::CLOUDTRAILS s3 BUCKET NAME/ awlogs / aws ACCOUNT NUMBER/*",
21
"条件":{
22
" StringEquals ": {
23
“s3: x-amz-acl”:“bucket-owner-full-control”
24
25
26
},
27
28
“席德”:“”,
29
“效应”:“允许”,
30.
“主要”:{
31
“AWS”:“arn: AWS:iam::AWS ACCOUNT NUMBER:user/ iam user NAME”
32
},
33
“行动”:“s3:列表*”,
34
“资源”:(
35
“arn:aws:s3:::CLOUDTRAILS s3桶名”,
36
"arn:aws:s3:::CLOUDTRAILS s3桶名/*"
37
38
},
39
40
“席德”:“”,
41
“效应”:“允许”,
42
“主要”:{
43
“AWS”:“arn: AWS:iam::AWS ACCOUNT NUMBER:user/ iam user NAME”
44
},
45
“行动”:“s3: GetObject”,
46
"Resource": "arn:aws:s3:::CLOUDTRAILS s3桶名/*"
47
48
49

如何配置事件源

  1. 从仪表板中选择数据收集在左边的菜单上。
  2. 当出现“数据采集”页面时,单击设置事件源下拉选择添加事件源
  3. 从“安全数据”部分,单击云服务图标。出现“添加事件源”面板。
  4. 选择收集器和事件源。如果需要,还可以命名事件源。
  5. 选择一个时区,并可选择只显示美国时区。
  6. 选择发送未经过滤的日志
  7. 选择您现有的凭据或使用EC2我角色
  8. 输入前面步骤中创建的Secret Key。
  9. 输入上一步创建的S3桶名。
  10. 输入上一步创建的S3 Key Prefix。
  11. 选择桶地区名称
  12. 输入刷新速率,单位为分钟。
  13. 配置您的默认域和任何高级事件源设置
  14. 点击保存

排除事件源故障

介绍常见故障处理场景。

InsightIDR不接收日志

如果您发现InsightIDR没有接收日志,且数据没有出现,请执行以下操作:

  1. 请检查IAM policy是否正确。
  2. 检查您是否使用了正确的区域。
  3. 确保S3桶中有实际的日志。
  4. 确保事件源的S3区域与CloudTrail使用的S3区域相匹配。

301错误

如果遇到此错误,这意味着事件源中的S3区域与CloudTrail日志的区域不匹配。确保事件源和CloudTrail使用相同的S3区域。

S3键前缀的困难

注意,如果您在AWS CloudTrail中配置了一个事件源配置,则只有在事件源配置中才需要键前缀。

没有键前缀的正常结构如下:bucket_name AWSLogs /帐户ID / CloudTrail /地区/ / MM / DD / YYYY file_name.json.gz

带有键前缀的结构看起来像这样:bucket_name / prefix_name / AWSLogs /帐户ID / CloudTrail /地区/ / MM / DD / YYYY file_name.json.gz

添加S3桶文件夹

要添加S3桶文件夹名,只需添加/在桶名的末尾。