Security & Threat Intelligence

The Watch

The Signal

A loose OIDC trust policy mints production credentials for any WarpBuild runner.

Nothing suggests WarpBuild itself is insecure. The exposure sits in your cloud account. A loosely scoped OIDC trust policy will mint production credentials for whatever runner executes the job, and that runner also holds the GITHUB_TOKEN, any signing keys and every secret the workflow references.

In Play

  1. OpenAI Dots Reach Self-Serve Tiers First

    OpenAI's Dots are always-on agents, each with its own cloud computer and 4,000+ app connectors. TheSequence reports they are live now for Pro and Business Premium users. The first Dot costs nothing extra. Only the Enterprise beta waits for a workspace admin to turn it on. Your earliest adopters can connect corporate SaaS from tiers you never approved, and OpenAI has not said whether Business Premium has an admin toggle.

  2. Uber and Zalando Publish an Agent Authorization Blueprint

    The ML Engineer reports that Uber now routes every AI agent through one MCP Gateway. The gateway fronts 800+ servers and 5,000 tools, most of them generated automatically from API definitions. Every tool is registered disabled until someone enables it. Zalando separately open-sourced an Agentic Identity Broker that carries the delegating user's identity through each agent hop. Auditors and red teamers will likely use these two designs as the yardstick for your agent platform.

  3. One-Line CI Runner Swaps Skip Vendor Review

    SRE Weekly reports that WarpBuild is marketing third-party GitHub Actions runners as a one-line workflow change with $50 in free credits. That one line moves your CI secrets, OIDC-minted cloud credentials and release artifacts to a provider your vendor-risk program never assessed. Nothing suggests WarpBuild has a security flaw. The exposure is an adoption path that any engineer with workflow write access can take without involving you.

  4. Gemini 4 Argon's Defender-Only Head Start

    Per The ML Engineer, Google DeepMind says Gemini 4 Argon, a model aimed at cybersecurity defense, scores 68% on CWE-bench, a vulnerability-remediation test. TheSequence reports that vetted defenders get first access through the Fairwind Program. Paid API and Google AI Ultra users follow after a phased safety review. Both outlets treat the scores as unverified. A model that can fix vulnerabilities can also find them, so the defenders' head start will end.

  5. AI Compute Debt Reaches Your Data Custody

    Reuters reports that Broadcom will lend Anthropic up to $42B for infrastructure. The FT says Nvidia is in preliminary talks to insure lenders against defaults by smaller GPU clouds. The Information reports that Nscale has filed to go public with 12 contracted data centers still unbuilt. Its anchor customers are Anthropic, Microsoft and Figure AI. If a GPU provider defaults, a lender and a trustee decide what happens to the hardware holding your data.

Deep Dives

Dots Make the OAuth Consent Screen Your AI Perimeter

The Enterprise toggle governs the tier employees are least likely to start on, so the boundary that holds is identity consent and Slack channel scope.

Each Dot runs on its own OpenAI-hosted cloud computer. Your EDR has no endpoint to watch there, and you cannot sandbox the runtime. Only one part of a Dot touches infrastructure you control: its connector tokens. Every connection to a SaaS app is an OAuth grant, issued by your identity provider or by the SaaS tenant. The third-party app consent policy in Entra ID, Google Workspace and Slack is therefore the one gate you can enforce today.

That policy applies to your tenant whichever ChatGPT tier the employee pays for. If your tenant lets users approve third-party apps themselves, a Pro subscriber can connect a Dot to corporate mail, files and chat in minutes. If your tenant requires admin consent, the same attempt arrives in your queue as a request.

What one phished login exposes

TheSequence maps the exposure to ATT&CK T1528 and T1550.001, which cover stealing an application access token and then reusing it. An attacker who compromises a user's ChatGPT account gets every connector grant that user's Dot holds. They inherit a worker that already runs 24/7 under a real employee's name, from OpenAI's cloud egress. Your UEBA sees an employee working late from somewhere new. Data leaving through a sanctioned connector also looks like ordinary API traffic (T1567, exfiltration over a web service), and most DLP won't flag it.

Slack and Teams become an input channel

The same DevDay release added @ChatGPT inside Slack and Teams, plus plugin extensions built on MCP Events. MCP, the Model Context Protocol, is the standard agents use to call tools. Any message, file or thread the assistant can read becomes input it may act on. In a Slack Connect, shared or guest channel, people outside your company write that input. That is indirect prompt injection (MITRE ATLAS AML.T0051.001): instructions hidden in content the agent reads rather than typed by its user. TheSequence reads MCP Events as event-triggered execution that could take the human out of the loop. It calls that an inference from the feature name, not documented behavior.

Price no longer slows a hijacked loop

TheSequence reports GPT-6.1 Sol at $2/$10 per million tokens, roughly one-fifth of Astra's price. The new Pro 500 tier carries 25x the Plus allowance. A runaway or hijacked agent loop will no longer burn budget fast enough for finance to notice. The API model ID gpt-6.1-sol gives your AI gateway an exact string to allow, deny or log.

OpenAI is not the only free agent

Meta's Muse for Small Business is free. Any marketing or ops user can connect it to Shopify, Slack, Dropbox, QuickBooks, Stripe and Zoom. The control point is the same: the OAuth grant inside each connected app.


The move

  1. Require admin consent for third-party AI apps in every identity plane. Then inventory existing OpenAI and Meta Muse grants and revoke any write scopes nobody has reviewed.
  2. Scope @ChatGPT to internal channels. Block it in Slack Connect, shared and guest channels until you have red-teamed it for prompt injection.
  3. Keep the Enterprise beta off until you have a pilot policy, and check your own tenant for an equivalent Business Premium control. Always-on agents that process personal data across many apps likely need a GDPR DPIA before any pilot.
When you cannot instrument the agent, the grants you allow it are your only enforcement point.

What to do

  1. Require admin consent for third-party AI apps in Entra ID, Google Workspace and Slack by Friday. Then inventory OpenAI and Meta Muse grants and revoke unreviewed write scopes.

  2. Restrict @ChatGPT to internal Slack and Teams channels this week. Block it in Slack Connect, shared and guest channels until an indirect prompt-injection red-team is complete.

  3. Ship detections this quarter for new OAuth grants to AI apps and for token use from AI-vendor egress. Label agent-originated sessions separately in UEBA.

Uber Registers Every Agent Tool Disabled. Copy That First.

Auto-generated tools turn each new API route into an agent privilege. Tool-level authorization still can't tell which human a call serves until delegated identity supplies that.

The disabled default matters because of how Uber builds its tools. Its AutoCrawler scans API definitions and generates MCP servers from them. An LLM then writes the tool descriptions that agents read when deciding what to call. Every endpoint in a spec becomes a candidate agent tool without a human writing it, including admin, debug and bulk-export routes. Without default-off registration, that pipeline would turn each new API route into a live agent privilege. With it, the enablement workflow becomes the control: who approves, against what criteria, and whether the event reaches your SIEM.

The ML Engineer flags a second risk. Machine-written descriptions sit directly in the agent's decision path, which makes them a channel close to prompt injection. The outlet labels this its own inference; Uber reported no such incident.

Centralization cuts both ways

Uber's proxy translates MCP calls into HTTP, gRPC or TChannel. Internal microservices were built to trust other services, often by network position. They now receive requests whose intent an LLM decided. The gateway is the one place to enforce authorization and log every agent action. It is also the one component whose compromise reaches every backend. Anyone who can write to the registry can grant agents new privileges, so treat it as Tier 0.

Three of Uber's controls were built to fix context bloat and cost, not security. Each leaves a gap you own:

  • Incremental discovery keeps agents from seeing all 5,000 tools at once. The discovery endpoint itself then becomes a reconnaissance tool for a hijacked agent.
  • GraphQL-like field selection limits the data returned. The agent chooses the fields, though, so sensitive attributes need field-level authorization.
  • Code mode writes tool output to files instead of the model's context. That adds a command-execution surface and leaves sensitive data at rest.

Three identity cases, one rule

Tool-level authorization answers whether an agent may call a tool. It does not say which human the call is for. Zalando's broker, shown running on KAOS, fills that gap across three cases.

CaseFailure modeControl
User delegates (Alice and Bob each run agents on one platform)Alice's agent reads Bob's data through the shared platform credentialOn-behalf-of tokens that carry the user's identity through every hop
Agent's own calls to its tools and modelsLong-lived tokens harvested and replayed (T1528, T1550.001)Short-lived workload tokens scoped to each tool
Autonomous agent with no userGrants pile up; injected input steers it toward anything the credential reachesExplicit grant ceiling, with human approval for scope changes

One rule covers all three. An agent's effective permission is the intersection of the delegating user's entitlements and the agent's own grant. It is never the union of the two, and never the platform service account. OAuth 2.0 Token Exchange (RFC 8693) is a reasonable place to start. It is a standard for swapping a token for a narrower one on a user's behalf.

Maturity caveat: the broker is new, and the same write-up names KAOS two different ways. Pin versions and review the code before it goes into your authorization path.

What the gateway doesn't reach

This design governs only the agents you host. NVIDIA's new Open Agent Safety Platform has the same limit. Its out-of-band monitor runs on a separate BlueField-4 DPU, so a compromised agent can't blind it. TheSequence notes it does nothing for agents running on a vendor's cloud, and the launch included no detection or false-positive rates. Self-optimizing harnesses call for one more precaution. Google's RRSI research prunes harness components that stop earning their keep, and guardrails rarely raise a task score. Mark authorization, redaction and guardrail steps as immutable in any auto-tuning loop.

What to do

  1. Inventory every MCP server, tool and agent credential this quarter, including shadow and developer-local servers. Map each one to the backends it can reach.

  2. Require default-disabled registration for every new agent tool by quarter end. Enabling a tool should need an owner, a data classification and a review of its description, and enablement events should stream to the SIEM.

  3. Pilot on-behalf-of delegation with RFC 8693 token exchange on one internal agent platform this quarter. Retire its shared service account and enforce the intersection rule.

One Edited runs-on Line Hands Your CI Secrets to a New Vendor

A runner holds signing keys and mints cloud credentials, and a loosely written OIDC trust policy will issue production access to whatever runner executes the job.

For the duration of a job, a CI runner holds the GITHUB_TOKEN, every secret the workflow references, and cloud credentials minted through OIDC federation. OIDC federation trades a GitHub-signed identity token for short-lived cloud keys. Many runners also hold signing or package-publishing keys and build the artifacts customers install. The sponsor pitch in SRE Weekly offers to move all of it with a one-line edit. The edit buys a build platform without a procurement review.

What movesExposureMapping
Secret custodyThe provider's hosts and operators, and any co-tenant who escapes job isolation, sit in the path of your secretsATT&CK T1552
Artifact integrityThe build environment is the classic insertion point. Your SLSA builder identity changes, and so may the build level you can claimT1195.002
Vendor relationshipCompromising one runner provider reaches every customer pipeline on itT1199
Compliance scopeThe provider becomes a subprocessor of your source code. That means SOC 2 CC9.2 evidence, plus GDPR Art. 28 if builds touch personal dataNone

GitHub-hosted runners carry the same class of risk. GitHub has already been through the review.

The OIDC trust policy sets the blast radius

Third-party managed runners typically register with GitHub as self-hosted. A cloud trust policy that checks only repository and branch in the token's sub claim will mint production credentials for that job wherever it runs. The fix starts with removing wildcard sub matches and pinning trust to repository plus a protected branch or environment. Some identity providers evaluate custom claims. GCP Workload Identity Federation does it through attribute conditions. Those providers can condition on job_workflow_ref or runner_environment, and a job on an unapproved runner then cannot obtain production keys, even after a workflow edit.

Detection costs almost nothing

GitHub's audit log already records the relevant events. Organizations that stream it to a SIEM can alert at install time on integration_installation.create, org.register_self_hosted_runner and repo.register_self_hosted_runner. CODEOWNERS on .github/workflows/**, with security or platform approval, is the usual gate. A PR that changes runs-on to a label outside the approved list is a second alert condition. Org-owner approval for GitHub App installs and self-hosted runner groups restricted to explicitly selected repositories close the rest. The rule matches Uber's disabled-by-default tool registry: a new execution environment stays inert until an org owner or a CODEOWNERS approver signs off.

Offer a sanctioned path

The vendor claims its runners are 2x faster at half the cost. That claim is unverified marketing. If the economics hold, a flat block breeds shadow IT. Due diligence on a runner provider can close in weeks. The red flags:

  • Isolation: containers share hosts, or runners are reused across jobs.
  • Operator access: staff hold standing access to running jobs, memory or disks, with no just-in-time approval.
  • Caches: namespaces are shared and nothing verifies integrity.
  • SOC 2 scope: only a Type I report exists, or the runner fleet is carved out of scope.
  • Logs: retention is indefinite and secrets are not masked.
  • Breach notification: the contract offers only commercially reasonable language, with no SLA.
A runner swap that takes one line of YAML is still a build-platform migration. It moves the secrets before anyone in security hears about it.

What to do

  1. Stream GitHub audit logs to the SIEM by Friday and alert on app installs and self-hosted runner registrations. Then audit existing installs for runner providers that engineers trialed without review.

  2. Rewrite cloud OIDC trust policies for GitHub Actions this quarter. Remove wildcard sub matches and pin trust to repository plus a protected branch or environment.

  3. Publish a fast-track due-diligence checklist for third-party runners this quarter. Cover isolation, operator access, cache segregation, SOC 2 scope, log retention and breach SLA.

The bottom line

These stories share one mechanism. Privileged automation now enters the company through self-service — a free tier, a trial credit, a single edited file — instead of through procurement. That breaks a quiet assumption: that vendor review and change approval happen because buying things is slow. That friction is gone, and it is not coming back. Make every place a new machine identity can appear start disabled until someone owns it, from identity-provider consent to workflow files to tool registries. Then count how many grants appeared last week without a ticket.