OpenAI ChatGPT Enterprise Custom Agent Published

edit
IMPORTANT: This documentation is no longer updated. Refer to Elastic's version policy and the latest documentation.

OpenAI ChatGPT Enterprise Custom Agent Published

edit

Detects ChatGPT Enterprise custom-agent publish events (agent_published). Publishing an agent with connectors, skills, or store visibility can establish durable automation and broaden data access beyond the original user.

Rule type: esql

Rule indices: None

Severity: medium

Risk score: 47

Runs every: 5m

Searches indices from: now-9m (Date Math format, see also Additional look-back time)

Maximum alerts per execution: 100

References:

Tags:

  • Domain: GenAI
  • Platform: OpenAI
  • Data Source: OpenAI ChatGPT Enterprise
  • Service: OpenAI ChatGPT Enterprise
  • Use Case: Threat Detection
  • Resources: Investigation Guide
  • Rule Type: ES|QL
  • Tactic: Persistence
  • Mitre Atlas: AML.T0081

Version: 1

Rule authors:

  • Elastic

Rule license: Elastic License v2

Investigation guide

edit

Triage and analysis

Investigating OpenAI ChatGPT Enterprise Custom Agent Published

A custom agent was published. Published agents with connectors, skills, and store visibility can establish durable automation and broaden data access.

Escalate when visibility is broader than expected, connectors are sensitive, or the publisher is not authorized to release agents. Close as a false positive for approved platform rollouts.

Possible investigation steps

  • Identify the actor and agent identifiers on the alert.
  • Review connectors, skills, store visibility, and any release notes or description fields.
  • Confirm whether publication matches an approved change request.
  • Look for related trigger creation or OAuth link events from the same actor.

False positive analysis

  • Platform teams publish approved custom agents during controlled workspace rollouts.

Response and remediation

  • Unpublish or delete unauthorized agents and revoke connected OAuth links.
  • Review recent agent runs if the agent may already have executed.

Setup

edit

Setup

This rule requires the OpenAI ChatGPT Enterprise integration to collect compliance logs into Elasticsearch.

https://www.elastic.co/docs/reference/integrations/openai_chatgpt_enterprise

Rule query

edit
from logs-openai_chatgpt_enterprise.custom_agents_log-* metadata _id, _version, _index
| where
    data_stream.dataset == "openai_chatgpt_enterprise.custom_agents_log" and
    event.action == "agent_published"
| keep
    _id, _version, _index, @timestamp, event.action, user.id, user.email,
    gen_ai.agent.id,
    openai_chatgpt_enterprise.custom_agents_log.client_id,
    openai_chatgpt_enterprise.custom_agents_log.event_details.publish_type,
    openai_chatgpt_enterprise.custom_agents_log.event_details.release_name,
    openai_chatgpt_enterprise.custom_agents_log.event_details.agent_fields.store_visible,
    openai_chatgpt_enterprise.custom_agents_log.event_details.agent_fields.workspace_capability,
    data_stream.*

Framework: MITRE ATT&CKTM