AWS S3 存储桶枚举或暴力破解
编辑AWS S3 存储桶枚举或暴力破解编辑
识别短时间内来自单个来源和帐户(或匿名帐户)的大量失败 S3 操作。此活动可能表示试图通过过度随机操作增加帐户的账单费用,导致资源耗尽,或枚举存储桶名称以进行发现。
规则类型:esql
规则索引:无
严重程度:低
风险评分: 21
运行频率:5 分钟
搜索的索引时间范围:now-10m(日期数学格式,另请参阅 其他回溯时间
)
每次执行的最大警报数: 100
参考资料:
标签:
- 域:云
- 数据源:AWS
- 数据源:Amazon Web Services
- 数据源:AWS S3
- 资源:调查指南
- 用例:日志审
- 策略:影响
版本: 1
规则作者:
- Elastic
规则许可证:Elastic 许可证 v2
调查指南编辑
分类和分析
调查 AWS S3 存储桶枚举或暴力破解
AWS S3 存储桶可能会遭到暴力破解,从而对资源所有者造成财务影响。即使是私有的、锁定的存储桶也可能产生潜在的成本,即使出现“访问被拒绝”的情况,并且未经身份验证的匿名帐户也可以访问这些存储桶,这使得情况更加危险。这似乎也适用于几种或所有操作(GET、PUT、list-objects 等)。此外,只要知道存储桶名称,默认情况下就可以轻松发现存储桶,这使得它们容易受到枚举攻击以进行发现。
攻击者可能会尝试枚举名称,直到发现有效的存储桶,然后转向造成财务影响,枚举以获取更多信息,或以其他方式进行暴力破解以尝试窃取数据。
可能的调查步骤
- 检查来自同一
source.address
和cloud.account.id
的操作请求历史记录,以确定是否存在其他可疑活动。 - 查看类似的请求并查看
user.agent
信息以确定请求的来源(尽管不要过度依赖此信息,因为它是由请求者控制的)。 - 查看对同一
aws.s3.object.key
的其他请求,以及由同一cloud.account.id
或source.address
访问的其他aws.s3.object.key
。 - 调查过去 48 小时内与用户帐户关联的其他警报。
- 验证活动是否与计划的补丁、更新或网络管理员活动无关。
- 检查请求参数。这些参数可能指示程序的来源或发生错误时正在执行的任务的性质。
- 检查错误是否与尝试枚举或访问对象、数据或机密失败有关。
- 考虑发出命令的用户的源 IP 地址和地理位置
- 它们对于调用用户来说是否正常?
- 如果源是 EC2 IP 地址,它是否与您某个帐户中的 EC2 实例相关联,或者源 IP 是否来自不受您控制的 EC2 实例?
- 如果它是授权的 EC2 实例,该活动是否与实例角色的正常行为相关联?是否存在与该实例相关的任何其他警报或可疑活动迹象?
- 考虑一天中的时间。如果用户是人类(而不是程序或脚本),则活动是否发生在一天中的正常时间?
- 如果怀疑存在可疑活动,请联系帐户所有者并确认他们是否知道此活动。
- 如果您怀疑帐户已被盗用,通过跟踪帐户在过去 24 小时内访问过的服务器、服务和数据来确定可能已被盗用的资产范围。
误报分析
- 验证
source.address
和cloud.account.id
- AWS 内部有一些来自 AWS 的有效操作可能会导致失败和误报。此外,失败的自动化也可能导致误报,但应该可以通过查看source.address
和cloud.account.id
来识别。
响应和修复
- 根据分类的结果启动事件响应流程。
- 在调查和响应期间禁用或限制帐户。
- 确定事件的可能影响并确定优先级;以下操作可以帮助您了解上下文
- 识别云环境中的帐户角色。
- 评估受影响的服务和服务器的关键程度。
- 与您的 IT 团队合作,确定并最大程度地减少对用户的影响。
- 确定攻击者是否正在横向移动并盗用其他帐户、服务器或服务。
- 确定与该活动相关的任何监管或法律后果。
- 调查攻击者盗用或使用的系统上的凭据泄露情况,以确保识别所有被盗用的帐户。根据需要重置密码或删除 API 密钥,以撤销攻击者对环境的访问权限。在采取这些行动期间,与您的 IT 团队合作,最大程度地减少对业务运营的影响。
- 检查是否创建了未经授权的新用户,删除未经授权的新帐户,并请求重置其他 IAM 用户的密码。
- 考虑为用户启用多重身份验证。
- 查看分配给相关用户的权限,以确保遵循最小权限原则。
- 实施 AWS 概述 的安全最佳实践。
- 采取必要的措施,使受影响的系统、数据或服务恢复到正常运行级别。
- 确定攻击者滥用的初始攻击途径,并采取行动防止通过同一途径再次感染。
- 使用事件响应数据,更新日志记录和审计策略,以缩短平均检测时间 (MTTD) 和平均响应时间 (MTTR)。
- 还要检查 PutBucketPolicy 事件操作,以查看它们是否已被篡改。虽然我们监控拒绝操作,但在 TDIR 期间,识别通过策略更新(无论他们如何获得权限)向存储桶添加后门的单个成功操作可能至关重要。
规则查询编辑
from logs-aws.cloudtrail* | where event.provider == "s3.amazonaws.com" and aws.cloudtrail.error_code == "AccessDenied" | stats failed_requests = count(*) by tls.client.server_name, source.address, cloud.account.id // can modify the failed request count or tweak time window to fit environment // can add `not cloud.account.id in (KNOWN)` or specify in exceptions | where failed_requests > 40
框架:MITRE ATT&CKTM
-
策略
- 名称:影响
- ID:TA0040
- 参考网址:https://attack.mitre.org/tactics/TA0040/
-
技术
- 名称:财务盗窃
- ID:T1657
- 参考网址:https://attack.mitre.org/techniques/T1657/
-
策略
- 名称:发现
- ID:TA0007
- 参考网址:https://attack.mitre.org/tactics/TA0007/
-
技术
- 名称:云基础设施发现
- ID:T1580
- 参考网址:https://attack.mitre.org/techniques/T1580/
-
策略
- 名称:收集
- ID:TA0009
- 参考网址:https://attack.mitre.org/tactics/TA0009/
-
技术
- 名称:来自云存储的数据
- ID:T1530
- 参考网址:https://attack.mitre.org/techniques/T1530/