AWS Bedrock检测到单个用户出现多个验证异常错误

编辑

AWS Bedrock检测到单个用户出现多个验证异常错误

编辑

识别AWS Bedrock中的多个验证异常错误。当您在使用不正确的推理参数或对应值的foundation模型上运行InvokeModel或InvokeModelWithResponseStream API时,就会发生验证错误。当您在一个模型中使用推理参数,而该模型没有相同的API参数时,也会发生这些错误。这可能表明试图绕过其他已批准模型的限制,或通过产生过高的成本来强制对环境造成影响。

规则类型: esql

规则索引: 无

严重性: 高

风险评分: 73

每隔: 10分钟运行

搜索索引自: now-60m (日期数学格式,另请参见 额外回溯时间)

每次执行的最大告警数: 100

参考:

标签:

  • 领域:LLM
  • 数据源:AWS
  • 数据源:AWS Bedrock
  • 数据源:AWS S3
  • 用例:策略违规
  • Mitre Atlas:T0015
  • Mitre Atlas:T0034
  • Mitre Atlas:T0046

版本: 3

规则作者:

  • Elastic

规则许可证: Elastic License v2

调查指南

编辑

分类和分析

调查Amazon Bedrock模型验证异常错误。

Amazon Bedrock是AWS的托管服务,使开发人员能够使用来自顶级提供商的大型基础模型(FM)构建和扩展生成式AI应用程序。

Bedrock提供来自Amazon(例如Titan系列)的各种预训练模型,以及来自Anthropic、Meta、Cohere和AI21 Labs等提供商的模型。

可能的调查步骤

  • 确定导致访问Amazon Bedrock模型时出现验证错误的用户帐户。
  • 调查过去48小时内与该用户帐户相关的其他警报。
  • 考虑一天中的时间。如果用户是人(而不是程序或脚本),活动是否发生在一天中的正常时间?
  • 检查该帐户在过去24小时内尝试访问Amazon Bedrock模型的情况。
  • 如果您怀疑该帐户已被入侵,请通过跟踪Amazon Bedrock模型访问、生成的提示以及该帐户在过去24小时内对提示的响应来确定可能受损的资产范围。

误报分析

  • 验证导致验证错误的用户帐户是否是用户在访问Bedrock模型时出现的合法误解。

响应和补救

  • 根据分类结果启动事件响应流程。
  • 在调查和响应期间禁用或限制帐户。
  • 确定事件的可能影响并相应地确定优先级;以下操作可以帮助您获得上下文
  • 确定帐户在云环境中的角色。
  • 确定攻击者是否正在横向移动并入侵其他Amazon Bedrock服务。
  • 确定与该活动相关的任何法规或法律影响。
  • 确定对资源计费的任何影响。
  • 查看分配给这些请求背后相关用户组或角色的权限,以确保它们被授权并预期可以访问Bedrock,并确保遵循最小权限原则。
  • 确定攻击者滥用的初始载体,并采取措施防止通过相同载体再次感染。
  • 使用事件响应数据,更新日志记录和审计策略,以提高平均检测时间 (MTTD) 和平均响应时间 (MTTR)。

设置

编辑

设置

此规则要求配置AWS Bedrock集成。有关更多信息,请参阅AWS Bedrock集成文档

https://elastic.ac.cn/docs/current/integrations/aws_bedrock

规则查询

编辑
from logs-aws_bedrock.invocation-*
// truncate the timestamp to a 1-minute window
| eval target_time_window = DATE_TRUNC(1 minutes, @timestamp)
| where gen_ai.response.error_code == "ValidationException"
| keep user.id, gen_ai.request.model.id, cloud.account.id, gen_ai.response.error_code, target_time_window
// count the number of users causing validation errors within a 1 minute window
| stats total_denials = count(*) by target_time_window, user.id, cloud.account.id
| where total_denials > 3