Use Agent Platform Threat Detection

This page describes how to configure Agent Platform Threat Detection.

The procedures in this document apply only to Agent Platform Threat Detection runtime detectors. For information about how to work with the control plane detectors for Agent Runtime, see Use Event Threat Detection.

Before you begin

  1. To get the permissions that you need to manage the Agent Platform Threat Detection service and its modules, ask your administrator to grant you the Security Center Management Admin (roles/securitycentermanagement.admin) IAM role on the organization, folder, or project. For more information about granting roles, see Manage access to projects, folders, and organizations.

    You might also be able to get the required permissions through custom roles or other predefined roles.

  2. Enable the Container Threat Detection API on all projects that contain hosted AI agents that you want to monitor. If this API is disabled on a project, Agent Platform Threat Detection can't monitor any AI agent in that project.

    To view the supported AI agents in your organization or project, see View agents deployed to Agent Runtime in this document.

    Roles required to enable APIs

    To enable APIs, you need the serviceusage.services.enable permission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.

    Enable the API

Enable or disable Agent Platform Threat Detection

By default, Agent Platform Threat Detection is enabled on your organization or project. To disable or re-enable Agent Platform Threat Detection, follow these steps:

Console

To enable or disable Agent Platform Threat Detection through the Google Cloud console, follow these steps:

  1. In the Google Cloud console, go to the Service Enablement page for AI Protection.

    Go to Service Enablement

  2. Select your organization or project.

  3. If AI Protection isn't enabled, click Activate. After it's enabled, all of the services that depend on AI Protection are displayed on the page, including Agent Platform Threat Detection.

  4. If the status of Agent Platform Threat Detection is Disabled, do the following:

    1. Click Manage Settings.
    2. Select the enablement status of the organization, folder, or project that you want to modify, and then select one of the following:

      • Enable: enable Agent Platform Threat Detection.
      • Disable: disable Agent Platform Threat Detection.
      • Inherit: inherit the enablement status from the parent folder or organization; available only for projects and folders.

gcloud

The gcloud scc manage services update command updates the state of a Security Command Center service or module.

Before using any of the command data below, make the following replacements:

  • RESOURCE_TYPE: the type of resource to update (organization, folder, or project)
  • RESOURCE_ID: the numeric identifier of the organization, folder, or project to update; for projects, you can also use the alphanumeric project ID
  • NEW_STATE: ENABLED to enable Agent Platform Threat Detection; DISABLED to disable Agent Platform Threat Detection; or INHERITED to inherit the enablement status of the parent resource (valid only for projects and folders)

Execute the gcloud scc manage services update command:

Linux, macOS, or Cloud Shell

gcloud scc manage services update agent-engine-threat-detection \
    --RESOURCE_TYPE=RESOURCE_ID \
    --enablement-state=NEW_STATE

Windows (PowerShell)

gcloud scc manage services update agent-engine-threat-detection `
    --RESOURCE_TYPE=RESOURCE_ID `
    --enablement-state=NEW_STATE

Windows (cmd.exe)

gcloud scc manage services update agent-engine-threat-detection ^
    --RESOURCE_TYPE=RESOURCE_ID ^
    --enablement-state=NEW_STATE

You should receive a response similar to the following:

effectiveEnablementState: ENABLED
intendedEnablementState: INHERITED
modules:
  AGENT_ENGINE_ADDED_MALICIOUS_BINARY_EXECUTED:
    effectiveEnablementState: ENABLED
  AGENT_ENGINE_ADDED_MALICIOUS_LIBRARY_LOADED:
    effectiveEnablementState: ENABLED
  AGENT_ENGINE_BUILT_IN_MALICIOUS_BINARY_EXECUTED:
    effectiveEnablementState: ENABLED
  AGENT_ENGINE_CONTAINER_ESCAPE:
    effectiveEnablementState: ENABLED
  AGENT_ENGINE_KUBERNETES_ATTACK_TOOL_EXECUTION:
    effectiveEnablementState: ENABLED
  AGENT_ENGINE_LOCAL_RECONNAISSANCE_TOOL_EXECUTION:
    effectiveEnablementState: ENABLED
  AGENT_ENGINE_MALICIOUS_PYTHON_EXECUTED:
    effectiveEnablementState: ENABLED
  AGENT_ENGINE_MALICIOUS_SCRIPT_EXECUTED:
    effectiveEnablementState: ENABLED
  AGENT_ENGINE_MALICIOUS_URL_OBSERVED:
    effectiveEnablementState: ENABLED
  AGENT_ENGINE_MODIFIED_MALICIOUS_BINARY_EXECUTED:
    effectiveEnablementState: ENABLED
  AGENT_ENGINE_MODIFIED_MALICIOUS_LIBRARY_LOADED:
    effectiveEnablementState: ENABLED
  AGENT_ENGINE_REPORT_CLI_ARGUMENTS:
    effectiveEnablementState: ENABLED
  AGENT_ENGINE_REVERSE_SHELL:
    effectiveEnablementState: ENABLED
  AGENT_ENGINE_UNEXPECTED_CHILD_SHELL:
    effectiveEnablementState: ENABLED
name: organizations/1234567890/locations/global/securityCenterServices/agent-engine-threat-detection
updateTime: '2025-08-20T18:14:24.731692211Z'

REST

The Security Command Center Management API's RESOURCE_TYPE.locations.securityCenterServices.patch method updates the state of a Security Command Center service or module.

Before using any of the request data, make the following replacements:

  • RESOURCE_TYPE: the type of resource to update (organizations, folders, or projects)
  • QUOTA_PROJECT: the project ID to use for billing and quota tracking.
  • RESOURCE_ID: the numeric identifier of the organization, folder, or project to update; for projects, you can also use the alphanumeric project ID
  • NEW_STATE: ENABLED to enable Agent Platform Threat Detection; DISABLED to disable Agent Platform Threat Detection; or INHERITED to inherit the enablement status of the parent resource (valid only for projects and folders)

HTTP method and URL:

PATCH https://securitycentermanagement.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/locations/global/securityCenterServices/agent-engine-threat-detection?updateMask=intendedEnablementState

Request JSON body:

{
  "intendedEnablementState": "NEW_STATE"
}

To send your request, expand one of these options:

You should receive a JSON response similar to the following:

{
  "name": "organizations/1234567890/locations/global/securityCenterServices/agent-engine-threat-detection",
  "intendedEnablementState": "INHERITED",
  "effectiveEnablementState": "ENABLED",
  "modules": {
    "AGENT_ENGINE_REPORT_CLI_ARGUMENTS": {
      "effectiveEnablementState": "ENABLED"
    },
    "AGENT_ENGINE_BUILT_IN_MALICIOUS_BINARY_EXECUTED": {
      "effectiveEnablementState": "ENABLED"
    },
    "AGENT_ENGINE_ADDED_MALICIOUS_BINARY_EXECUTED": {
      "effectiveEnablementState": "ENABLED"
    },
    "AGENT_ENGINE_KUBERNETES_ATTACK_TOOL_EXECUTION": {
      "effectiveEnablementState": "ENABLED"
    },
    "AGENT_ENGINE_MALICIOUS_URL_OBSERVED": {
      "effectiveEnablementState": "ENABLED"
    },
    "AGENT_ENGINE_MODIFIED_MALICIOUS_LIBRARY_LOADED": {
      "effectiveEnablementState": "ENABLED"
    },
    "AGENT_ENGINE_ADDED_MALICIOUS_LIBRARY_LOADED": {
      "effectiveEnablementState": "ENABLED"
    },
    "AGENT_ENGINE_LOCAL_RECONNAISSANCE_TOOL_EXECUTION": {
      "effectiveEnablementState": "ENABLED"
    },
    "AGENT_ENGINE_CONTAINER_ESCAPE": {
      "effectiveEnablementState": "ENABLED"
    },
    "AGENT_ENGINE_MALICIOUS_SCRIPT_EXECUTED": {
      "effectiveEnablementState": "ENABLED"
    },
    "AGENT_ENGINE_MALICIOUS_PYTHON_EXECUTED": {
      "effectiveEnablementState": "ENABLED"
    },
    "AGENT_ENGINE_REVERSE_SHELL": {
      "effectiveEnablementState": "ENABLED"
    },
    "AGENT_ENGINE_MODIFIED_MALICIOUS_BINARY_EXECUTED": {
      "effectiveEnablementState": "ENABLED"
    },
    "AGENT_ENGINE_UNEXPECTED_CHILD_SHELL": {
      "effectiveEnablementState": "ENABLED"
    }
  },
  "updateTime": "2025-08-20T18:14:24.731692211Z"
}

Enable or disable an Agent Platform Threat Detection module

To enable or disable an individual Agent Platform Threat Detection module, follow these steps. For information about all Agent Platform Threat Detection threat findings and their modules, see Detectors.

Console

In the Google Cloud console, you can enable or disable Agent Platform Threat Detection modules at the organization or project level.

  1. In the Google Cloud console, go to the Modules page for Agent Platform Threat Detection.

    Go to Modules

  2. Select your organization or project.

  3. On the Modules tab, in the Status column, select the current status of the module that you want to enable or disable, and then select one of the following:

    • Enable: enable the module.
    • Disable: disable the module.

gcloud

The gcloud scc manage services update command updates the state of a Security Command Center service or module.

Before using any of the command data below, make the following replacements:

  • RESOURCE_TYPE: the type of resource to update (organization, folder, or project).
  • RESOURCE_ID: the numeric identifier for the organization, folder, or project to update. For projects, you can also use the alphanumeric project ID.
  • MODULE_NAME: the name of the module to enable or disable. For valid values, see Agent Platform Threat Detection detectors.
  • NEW_STATE: ENABLED to enable the module; DISABLED to disable the module; or INHERITED to inherit the enablement status of the parent resource (valid only for projects and folders).

Save the following content in a file called request.json:

{
  "MODULE_NAME": {
    "intendedEnablementState": "NEW_STATE"
  }
}

Execute the gcloud scc manage services update command:

Linux, macOS, or Cloud Shell

gcloud scc manage services update agent-engine-threat-detection \
    --RESOURCE_TYPE=RESOURCE_ID \
    --module-config-file=request.json

Windows (PowerShell)

gcloud scc manage services update agent-engine-threat-detection `
    --RESOURCE_TYPE=RESOURCE_ID `
    --module-config-file=request.json

Windows (cmd.exe)

gcloud scc manage services update agent-engine-threat-detection ^
    --RESOURCE_TYPE=RESOURCE_ID ^
    --module-config-file=request.json

You should receive a response similar to the following:

effectiveEnablementState: ENABLED
intendedEnablementState: INHERITED
modules:
  AGENT_ENGINE_ADDED_MALICIOUS_BINARY_EXECUTED:
    effectiveEnablementState: ENABLED
  AGENT_ENGINE_ADDED_MALICIOUS_LIBRARY_LOADED:
    effectiveEnablementState: ENABLED
  AGENT_ENGINE_BUILT_IN_MALICIOUS_BINARY_EXECUTED:
    effectiveEnablementState: ENABLED
  AGENT_ENGINE_CONTAINER_ESCAPE:
    effectiveEnablementState: ENABLED
  AGENT_ENGINE_KUBERNETES_ATTACK_TOOL_EXECUTION:
    effectiveEnablementState: ENABLED
  AGENT_ENGINE_LOCAL_RECONNAISSANCE_TOOL_EXECUTION:
    effectiveEnablementState: ENABLED
  AGENT_ENGINE_MALICIOUS_PYTHON_EXECUTED:
    effectiveEnablementState: ENABLED
  AGENT_ENGINE_MALICIOUS_SCRIPT_EXECUTED:
    effectiveEnablementState: ENABLED
  AGENT_ENGINE_MALICIOUS_URL_OBSERVED:
    effectiveEnablementState: ENABLED
  AGENT_ENGINE_MODIFIED_MALICIOUS_BINARY_EXECUTED:
    effectiveEnablementState: ENABLED
  AGENT_ENGINE_MODIFIED_MALICIOUS_LIBRARY_LOADED:
    effectiveEnablementState: ENABLED
  AGENT_ENGINE_REPORT_CLI_ARGUMENTS:
    effectiveEnablementState: ENABLED
  AGENT_ENGINE_REVERSE_SHELL:
    effectiveEnablementState: ENABLED
  AGENT_ENGINE_UNEXPECTED_CHILD_SHELL:
    effectiveEnablementState: ENABLED
name: organizations/1234567890/locations/global/securityCenterServices/agent-engine-threat-detection
updateTime: '2025-08-20T18:14:24.731692211Z'

REST

The Security Command Center Management API's RESOURCE_TYPE.locations.securityCenterServices.patch method updates the state of a Security Command Center service or module.

Before using any of the request data, make the following replacements:

  • RESOURCE_TYPE: the type of resource to update (organizations, folders, or projects).
  • QUOTA_PROJECT: the project ID to use for billing and quota tracking.
  • RESOURCE_ID: the numeric identifier for the organization, folder, or project to update. For projects, you can also use the alphanumeric project ID.
  • MODULE_NAME: the name of the module to enable or disable. For valid values, see Agent Platform Threat Detection detectors.
  • NEW_STATE: ENABLED to enable the module; DISABLED to disable the module; or INHERITED to inherit the enablement status of the parent resource (valid only for projects and folders).

HTTP method and URL:

PATCH https://securitycentermanagement.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/locations/global/securityCenterServices/agent-engine-threat-detection?updateMask=modules

Request JSON body:

{
  "modules": {
    "MODULE_NAME": {
      "intendedEnablementState": "NEW_STATE"
    }
  }
}

To send your request, expand one of these options:

You should receive a JSON response similar to the following:

{
  "name": "organizations/1234567890/locations/global/securityCenterServices/agent-engine-threat-detection",
  "intendedEnablementState": "INHERITED",
  "effectiveEnablementState": "ENABLED",
  "modules": {
    "AGENT_ENGINE_REPORT_CLI_ARGUMENTS": {
      "effectiveEnablementState": "ENABLED"
    },
    "AGENT_ENGINE_BUILT_IN_MALICIOUS_BINARY_EXECUTED": {
      "effectiveEnablementState": "ENABLED"
    },
    "AGENT_ENGINE_ADDED_MALICIOUS_BINARY_EXECUTED": {
      "effectiveEnablementState": "ENABLED"
    },
    "AGENT_ENGINE_KUBERNETES_ATTACK_TOOL_EXECUTION": {
      "effectiveEnablementState": "ENABLED"
    },
    "AGENT_ENGINE_MALICIOUS_URL_OBSERVED": {
      "effectiveEnablementState": "ENABLED"
    },
    "AGENT_ENGINE_MODIFIED_MALICIOUS_LIBRARY_LOADED": {
      "effectiveEnablementState": "ENABLED"
    },
    "AGENT_ENGINE_ADDED_MALICIOUS_LIBRARY_LOADED": {
      "effectiveEnablementState": "ENABLED"
    },
    "AGENT_ENGINE_LOCAL_RECONNAISSANCE_TOOL_EXECUTION": {
      "effectiveEnablementState": "ENABLED"
    },
    "AGENT_ENGINE_CONTAINER_ESCAPE": {
      "effectiveEnablementState": "ENABLED"
    },
    "AGENT_ENGINE_MALICIOUS_SCRIPT_EXECUTED": {
      "effectiveEnablementState": "ENABLED"
    },
    "AGENT_ENGINE_MALICIOUS_PYTHON_EXECUTED": {
      "effectiveEnablementState": "ENABLED"
    },
    "AGENT_ENGINE_REVERSE_SHELL": {
      "effectiveEnablementState": "ENABLED"
    },
    "AGENT_ENGINE_MODIFIED_MALICIOUS_BINARY_EXECUTED": {
      "effectiveEnablementState": "ENABLED"
    },
    "AGENT_ENGINE_UNEXPECTED_CHILD_SHELL": {
      "effectiveEnablementState": "ENABLED"
    }
  },
  "updateTime": "2025-08-20T18:14:24.731692211Z"
}

View the statuses of the Agent Platform Threat Detection modules

To view the statuses of the Agent Platform Threat Detection modules, follow these steps. For information about all Agent Platform Threat Detection threat findings and their modules, see Detectors.

Console

In the Google Cloud console, you can view the enablement state of Agent Platform Threat Detection modules at the organization or project level.

  1. In the Google Cloud console, go to the Modules page for Agent Platform Threat Detection.

    Go to Modules

  2. Select your organization or project.