View a markdown version of this page

GuardDuty AI 保护查找类型 - 亚马逊 GuardDuty

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

GuardDuty AI 保护查找类型

启用 AI 保护后, GuardDuty 会分析来自亚马逊 Bedrock 和 Amazon A SageMaker I 的 AWS CloudTrail 管理事件和数据事件。 GuardDuty 使用这些数据来检测针对您的 AI 工作负载的潜在可疑活动。当 GuardDuty 检测到潜在威胁时,它会生成以下发现类型之一。这些发现Resource type的结果是AccessKey,该发现确定了调用该模型的 IAM 身份。

每项发现还包括有关发现resource对象中受影响的人工智能资源的详细信息。Impact:IAMUser/AnomalousModelInvocation和Impact:IAMUser/CostHarvesting调查结果包括一份resource.modelDetails清单,用于识别所调用的亚马逊 Bedrock 或亚马逊 SageMaker AI 模型。该Impact:IAMUser/PromptInjection.Direct发现包括一个描述介入的亚马逊基岩护栏的resource.bedrockGuardrailDetails物体。您可以在 GuardDuty 控制台或查找 JSON 中查看这些详细信息。

Impact:IAMUser/AnomalousModelInvocation和Impact:IAMUser/CostHarvesting查找类型适用于亚马逊 Bedrock 和亚马逊 SageMaker AI 模型调用。该Impact:IAMUser/PromptInjection.Direct发现类型适用于使用亚马逊基岩护栏的亚马逊基岩工作负载。

Impact:IAMUser/AnomalousModelInvocation

IAM 身份调用亚马逊 Bedrock 或亚马逊 SageMaker AI 模型的方式与身份或账户的既定基准有所不同。

默认严重级别:低

  • 功能:人工智能保护

这一发现告诉您,IAM 身份调用了亚马逊 Bedrock 或亚马逊 SageMaker AI 模型的方式与该身份或账户的历史活动有所不同。此活动可能表明威胁行为者正在使用泄露的凭据访问您账户中的基础模型。例如,参与者可能会探测模型、制作对抗性输入或运行自动请求。

GuardDuty 为每个 IAM 身份建立正常模型调用活动的基准, AWS 账户 该基准会调用 Amazon Bedrock 或 Amazon AI。 SageMaker GuardDuty 概述调用活动的功能,包括以下内容:

  • 身份调用的模型调用 API

  • 身份所调用的模型

  • 源 IP 地址及其关联的自治系统编号 (ASN) 组织

  • 发出请求的用户代理

当 GuardDuty 观察到活动明显偏离该基线时,它会得出这一发现。示例包括来自以前看不见的 IP 地址、以前看不见的用户代理或身份从未调用的模型的调用。调查结果包括一份resource.modelDetails清单,列出了参与可疑活动的模型。每个条目都包含一个modelId代表亚马逊 Bedrock 基础模型、推理配置文件、预配置、自定义或导入的模型 ARN、亚马逊 Bedrock Marketplace 终端节点、提示资源或亚马逊 AI 终端节点名称。 SageMaker

这一发现与 MITRE ATLAS 网站上的 MITRE ATLAS 技术 AML.T0040 ——人工智能模型推断 API 访问权限相吻合。

修复建议:

如果此活动是意外活动,则您的凭证可能已泄露。有关更多信息,请参阅 修复可能受损的漏洞 AWS 凭证。

为了降低未经授权的模型调用的风险,限制哪些身份可以调用模型。将对以下模型调用 API 的访问权限范围仅限于需要它们的主体和模型:

  • bedrock:InvokeModel

  • bedrock:InvokeModelWithResponseStream

  • bedrock:Converse

  • bedrock:ConverseStream

  • bedrock-mantle:CreateInference

  • sagemaker:InvokeEndpoint

  • sagemaker:InvokeEndpointAsync

  • sagemaker:InvokeEndpointWithResponseStream

要拒绝组织中不需要的模型推断,可以使用服务控制策略 (SCP)。有关更多信息,请参阅亚马逊 Bedrock 用户指南中的亚马逊 Bedrock Identity-based 政策示例和亚马逊 SageMaker AI 开发者指南中的亚马逊 AI 基于身份的政策示例。 SageMaker

Impact:IAMUser/CostHarvesting

IAM 身份调用了具有异常代币量的 SageMaker Amazon Bedrock 或 Amazon AI 模型,这可能表明存在成本收取攻击。

默认严重级别:低

  • 功能:人工智能保护

这一发现告诉您,IAM 身份调用了 Amazon Bedrock 或 SageMaker Amazon AI 模型,其输入或输出代币量与该身份或账户的基准相差很大。在成本收割攻击中,威胁行为者向模型发送计算成本高昂的输入,这会增加 AI 工作负载的运营成本,但不一定会泄露数据。这些输入可能包括过长的提示,或者恶意构造的错误格式提示。

GuardDuty 为调用亚马逊 Bedrock 或 Amazon AI 模型的每个 IAM 身份和账户建立平均输入代币量和平均输出代币量的基准。 SageMaker 当 GuardDuty 观察到代币数量超过此基准的调用,并将音量异常与其他异常信号相关联时,就会生成此发现。 GuardDuty 该发现报告了该service.detection对象中的异常活动,包括观察到的偏离基准的调用量和代币量。它还包括一个标识目标模型的resource.modelDetails清单。每个条目都包含一个modelId代表亚马逊 Bedrock 基础模型、推理配置文件、预配置、自定义或导入的模型 ARN、亚马逊 Bedrock Marketplace 终端节点、提示资源或亚马逊 AI 终端节点名称。 SageMaker

这一发现与MITRE ATLAS 网站上的 “MITRE ATLAS技术 AML.T0034 ——成本收集” 相吻合。

修复建议:

如果这种活动对关联身份来说是意想不到的,则证书可能已被泄露并被用来推高 AI 工作负载的成本。有关更多信息,请参阅 修复可能受损的漏洞 AWS 凭证。查看与身份相关的模型调用,将对以下模型调用 API 的访问范围限定为仅限需要它们的主体,从而限制对受影响模型的访问权限:

  • bedrock:InvokeModel

  • bedrock:InvokeModelWithResponseStream

  • bedrock:Converse

  • bedrock:ConverseStream

  • bedrock-mantle:CreateInference

  • sagemaker:InvokeEndpoint

  • sagemaker:InvokeEndpointAsync

  • sagemaker:InvokeEndpointWithResponseStream

要检测和遏制异常支出,您可以使用AWS 预算,包括在超过预算阈值时应用限制性 IAM 政策的预算操作和AWS 成本异常检测。要将 Amazon Bedrock 成本归因于特定工作负载,您可以将成本分配标签附加到应用程序推理配置文件中。

Impact:IAMUser/PromptInjection.Direct

Amazon Bedrock 护栏在某个 IAM 身份发起的调用中检测到直接提示注入尝试。

默认严重级别:低

  • 功能:人工智能保护

此调查发现告知您,在您的账户中,为 Amazon Bedrock 工作负载配置的 Amazon Bedrock 护栏检测到了直接提示注入尝试。在直接即时注入攻击中,威胁行为者制作恶意提示作为基础模型的输入。该提示使模型忽略其原始指令,改为遵循攻击者的指示。提示注入可以让攻击者获得 AI 应用程序的初始访问权限,进而用于执行其他步骤,例如泄露数据、调用未经授权的工具或绕过安全控制机制。

GuardDuty 当亚马逊 Bedrock Guardrail 由于高度可信地检测到即时攻击而干预调用时,会生成此发现。 GuardDuty 要启用检测直接提示注入,请使用即时攻击内容过滤器配置 Amazon Bedrock Guardrail。https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails-prompt-attack.html为确保护栏评估整个环境中的调用,请广泛执行该护栏,而不是依赖单个应用程序将其附加到每个请求中。您可以使用中的亚马逊 Bedrock 政策,对一个账户中的所有亚马逊 Bedrock 模型调用实施保护措施,也可以对整个组织中的所有亚马逊 Bedrock 模型调用实施保护措施。 AWS Organizations有关更多信息,请参阅《亚马逊 Bedrock 用户指南》中的 “使用亚马逊基岩护栏强制实施跨账户保障” 。当护栏评估调用时,Amazon Bedrock 会将评估结果记录在 AWS CloudTrail 数据事件中, GuardDuty 通过分析得出这一结果。如果护栏在评估调用时还应用了敏感信息过滤器,则调查结果包括有关检测到的敏感信息类型的详细信息。

该调查发现包括一个 resource.bedrockGuardrailDetails 对象,描述护栏进行的干预。下表描述了该对象中的字段。

字段

说明

guardrails

评估调用的护栏清单。每个条目都包含亚马逊资源名称 (arn) 和护栏version的名称。当账户强制或组织强制的护栏和请求级别的护栏评估同一个调用时,可能会出现多个护栏。

guardrailAction

护栏采取的行动。 GuardDuty 当值为时生成此发现GUARDRAIL_INTERVENED。

guardrailSource

护栏评估的内容。INPUT表示向模型发送的提示,并OUTPUT表示模型的响应。

contentPolicyFilters

护栏应用的内容策略过滤器列表。对于这种查找类型,条目type的 a PROMPT_ATTACK 和 a confidence 为HIGH。actionBLOCKED如果护栏屏蔽了内容,或者NONE护栏检测到了即时攻击,但仅配置为举报攻击。

sensitiveInformationFilters

护栏在评估调用时应用的敏感信息过滤器。每个条目type都有一个用于识别护栏检测到的敏感信息的种类,例如AWS_SECRET_KEY或PASSWORD,以及护栏BLOCKED是否屏蔽了内容、护栏ANONYMIZED是否掩盖了内容,或者护栏NONE是否检测到但配置为仅报告内容。action该发现记录了检测到的信息类型,而不是内容本身。

这一发现与 MITRE ATLAS 网站上的 MITRE ATLAS 技术 AML.T0051 ——LLM Prompt Incept In ception 相吻合。

修复建议:

查看触发护栏干预的提示和提交提示的 IAM 身份。如果关联身份的活动是意外的,则证书可能已被泄露。有关更多信息,请参阅 修复可能受损的漏洞 AWS 凭证。如果护栏检测到但没有阻止即时攻击,可以考虑将提示攻击内容过滤器的操作设置为 “阻止” 而不是 “检测”,这样护栏就会屏蔽内容。有关更多信息,请参阅亚马逊 Bedrock 用户指南中的处理亚马逊 Bedrock Guardrails 检测到的有害内容的选项。您还可以限制受影响身份对亚马逊 Bedrock 调用 API 的访问权限。