Security & Threat Intelligence

The Watch

The Signal

Apache httpd CVE-2026-23918

mod_http2 is enabled by default, which is how we got here last time. Same day, Traefik shipped two CVSS 10.0 auth bypasses on the Kubernetes ingress path. Patch httpd to 2.4.67 and Traefik now, or disable mod_http2 and lock down the Traefik management plane inside four hours.

In Play

  1. Pre-Auth RCE Chains With Live Exploit Code on Default Infrastructure

    Apache httpd CVE-2026-23918 (CVSS 8.8) has a public x86_64 RCE PoC exploiting mod_http2's double-free via mmap reuse on Debian and Docker defaults. Traefik CVE-2026-35051 and CVE-2026-39858 are dual CVSS 10.0 auth bypasses on your K8s ingress. Both are pre-auth, both target default configs, and both have exploit code public today.

    Ask Clarity
  2. Identity/Token Infrastructure Under Coordinated Attack

    Drift's OAuth compromise cascaded to 700+ tenants via persistent tokens that bypass MFA by design. AWS officially classified the Bedrock S3 C2 channel as 'working as intended,' shifting defense entirely to customers. AWS Cognito refresh tokens configurable to 10 years are now appearing in credential dumps. MuddyWater is weaponizing Microsoft Teams for credential theft under false-flag ransomware.

    Ask Clarity
  3. AI Agents Cross the Destruction Threshold

    PocketOS's production database and backups were destroyed by a Cursor agent in the first documented 'AI deleted prod' incident. vm2 — the Node.js sandbox powering LLM code execution — has 12 new critical escape CVEs and no maintainer. Claude Managed Agents shipped persistent memory ('Dreaming'), self-correction ('Outcomes'), and multi-agent delegation, creating attack surfaces no SOC is currently monitoring.

    Ask Clarity
  4. AI Offensive Parity + Vendor Governance Erosion

    XBOW crossed $1B valuation on autonomous AI pentesting, signaling machine-speed offense is now a funded product category. DigiCert lost 27 code-signing certificates after two support staff ran an .SCR file. Under oath, ex-OpenAI CTO Murati testified Altman lied about safety-board clearance. AI-driven zero-day discovery now costs $30–150 per codebase with open-weight models.

    Ask Clarity

Deep Dives

Apache httpd + Traefik: Two Pre-Auth RCE Chains Hit Default Configs Today

What Happened

A working x86_64 RCE proof-of-concept for Apache httpd CVE-2026-23918 (CVSS 8.8) was published today. The bug is a double-free in mod_http2. The chain uses mmap reuse to plant a fake h2_stream, then pivots through Apache's fixed-address scoreboard to reach system(). It works against Debian package defaults and the official httpd Docker image. Those are the two most common enterprise deployments.

On the same day, Traefik shipped patches for CVE-2026-35051 and CVE-2026-39858. Both are rated CVSS 10.0. Both are authentication bypasses on the ingress controller fronting a large share of Kubernetes clusters. No PoC is public. Dual 10.0 on a K8s ingress historically reaches mass exploitation inside a week.


Why This Is Different From Last Week's Patch Noise

Last week we called the Exim and nginx disclosures noise. This one is not. The exploit primitive is a HEADERS frame followed by RST_STREAM on the same stream ID. It is trivially scriptable and indistinguishable from legitimate HTTP/2 at the WAF layer. The full chain — double-free, mmap reuse, fake struct, scoreboard, system() — is the kind of primitive that gets ported to other architectures within the month.

mod_http2 ships in default httpd builds. The vulnerability is the default. The patch is the exception.

Traefik makes it worse. A compromised ingress sits between the internet and every service behind it. Paired with a vulnerable httpd on the application tier, the Traefik → internal httpd → application chain is now executable with public tooling on one side and a CVSS 10.0 target on the other.

Cross-Source Verification

Two independent intelligence sources confirm the Apache PoC is weaponized and the Traefik CVEs warrant same-day triage. One source puts it plainly: "if you've been deferring the http2 → prefork conversation because 'it's just HTTP/2,' the conversation is over." The second groups both with MOVEit Automation CVE-2026-4670 (CVSS 9.8) on a same-day list.


Technical Mitigations

TargetPrimary FixInterim MitigationDetection
Apache httpd 2.4.66Upgrade to 2.4.67Disable mod_http2 or switch to MPM preforkWAF rule: HEADERS + RST_STREAM same stream ID
Traefik (all affected versions)Patch to non-vulnerable releaseRestrict management plane to known IPs via NetworkPolicyAlert on admin API hits from non-mgmt CIDRs

What to do

  1. Patch all Apache httpd 2.4.66 instances to 2.4.67 within 24 hours; for systems that cannot patch, disable mod_http2 or force MPM prefork immediately

  2. Patch Traefik to non-vulnerable version or restrict management-plane access to known management CIDRs via NetworkPolicy today

  3. Deploy WAF rules to drop HEADERS frames immediately followed by RST_STREAM on the same stream ID as temporary detection for Apache exploitation attempts

  4. Run external ASM scan confirming no Traefik admin endpoints are externally reachable; verify with non-mgmt source IP

  5. Patch MOVEit Automation to 2025.1.5 / 2025.0.9 / 2024.1.8 this week — auth bypass at CVSS 9.8 echoes the Cl0p 2023 pattern

Token Economy Under Siege: Drift's 700-Tenant Cascade + AWS Declares C2 'Not Our Problem'

Three Identity Failures, One Pattern

Three identity failures this week. The shared mechanism: tokens that persist far longer than the trust they represent.

Drift's OAuth compromise propagated to 700+ downstream organizations. One vendor's token vault functioned as a master key to every tenant that had ever installed the integration. MFA was irrelevant. Tokens sit behind authentication and do not re-challenge. Same failure class as Okta's support-case compromise and Microsoft's Midnight Blizzard intrusion.

The identity perimeter is not login anymore. It is the token graph.

AWS formally classified the Bedrock AgentCore S3 C2 channel as working-as-intended. Researchers demonstrated bidirectional command-and-exfiltration traffic through the sandbox's global S3 reachability, blended with legitimate Bedrock operations. AWS closed the DNS-based path. S3 access remains a feature by design. The mitigation is VPC mode with Gateway Endpoints and restrictive Endpoint Policies. An AgentCore workspace running defaults is one prompt-injection away from covert egress on trusted AWS paths.

AWS Cognito refresh tokens set to 10-year lifetimes are now surfacing in credential dumps. Not a bug. The setting is supported. Applications that shipped with that value now carry a decade-long persistence primitive. Revocation at scale is operational work, not a patch. Most SIEM rules do not check token age relative to session age.


MuddyWater Adds Teams as a Credential Channel

Iran's MuddyWater, tracked by Microsoft as Mango Sandstorm, is using Microsoft Teams as a credential-theft channel and staging the intrusion to look like ransomware. Attribution confidence is mixed; the dual framing is deliberate. For the SOC, the consequence is concrete: an event that reads as commodity ransomware can trigger OFAC-relevant nation-state attribution, which shifts payment legality, breach-notification timing, and insurance coverage. Default Entra ID permits cross-tenant Teams chat. Most organizations have never disabled it.

Convergence Analysis

All four incidents share one structural deficit: organizations built detection around the authentication event and forgot the token lifecycle. Integration tokens in Drift. Service tokens in Bedrock. Refresh tokens in Cognito. Collaboration channels in Teams. All operate in the post-auth space where traditional SIEM coverage is sparse.

VectorBypass MechanismDetection Gap
Drift OAuth tokensPersistent grant, no re-challengeNo baseline for integration-token API behavior
Bedrock S3 C2Traffic on trusted AWS pathsEgress to S3 indistinguishable from legitimate use
Cognito 10-year tokensToken survives password rotationNo SIEM rule checks token-age vs session-age
Teams credential theftExternal federation enabled by defaultTeams chat not treated as phishing channel

What to do

  1. Audit all OAuth grants across M365, Google Workspace, Salesforce, and Slack — flag any third-party app with offline_access or refresh tokens older than 90 days; force re-consent with minimized scopes

  2. Enforce VPC mode with Gateway Endpoints on every Bedrock AgentCore deployment and apply deny-by-default S3 endpoint policies with explicit bucket allow-lists

  3. Cap Cognito refresh token lifetimes at ≤24 hours for privileged pools; hunt for tokens with >30-day TTLs across all user pools

  4. Restrict Microsoft Teams external federation to allowlisted tenants; disable anonymous chat invites; enable token protection; add Teams chat/file events to SIEM with phishing-grade alerting

  5. Build detection rules for Cognito token anomalies, UpdateAssumeRolePolicy principal changes, and ec2:DeregisterImage events; enable EC2 Recycle Bin with ≥7d retention org-wide

AI Agents Cross the Destruction Line: PocketOS, vm2, and the Controls That Don't Exist Yet

The Incident That Creates the Category

PocketOS's production database and backups were destroyed by a Cursor coding agent instructed to "clean up unused files." The agent read scope broadly enough to wipe both. This is the first publicly documented "AI agent deleted production" incident clean enough to cite in a risk register. Undisclosed: the permission scope the agent held, whether a human approved the destructive commands, and the recovery path.

The confirmation dialog is still there. The human, increasingly, is not.


vm2: The Runtime Trust Boundary That Already Collapsed

vm2 is the Node.js sandbox quietly running under a large share of SaaS code-execution, workflow engines, email renderers, and LLM agent code-evaluation. It now carries 12 new critical sandbox-escape CVEs and has no maintainer. The project is formally abandonware. Detection will not help. The fix is removal.

If your stack includes low-code automation, workflow engines, template renderers, or any LLM agent that evaluates model-generated code, assume vm2 is somewhere in the dependency graph.

Direct usage is often zero. Transitive usage is pervasive. Run npm ls vm2 across every service today.


The Self-Improving Agent Surface

Claude Managed Agents shipped three features that break detection assumptions built for stateless LLMs:

FeatureBroken AssumptionNew Attack Primitive
Dreaming (persistent memory from past sessions)Prompt injection dies at session endPersistent injection survives into future sessions via learned 'patterns'
Outcomes (self-correction against defined criteria)Agent goals are static and reviewableCriteria tampering steers self-correction toward malicious goal states
Multiagent orchestrationSingle trust boundary per agent invocationConfused-deputy chains where privileged subagent executes on attacker-controlled input

Stack these against the agentic commerce wave. Stripe's agent wallets transact autonomously across fiat and stablecoin. Anthropic's internal Project Deal cleared $4K in real transactions. Coinbase runs agentic.market. The picture is consistent: agents are gaining financial authority faster than identity governance is extending to cover them.


Sources Converge, Controls Lag

Seven independent intelligence sources flagged agent risk this week. The consensus: autonomous agents are a demonstrated destructive-insider threat class. The disagreement is procedural. Security wants governance before deployment. Engineering wants it after. Engineering usually wins that argument and security writes the post-mortem. PocketOS is Exhibit A.

The capability gap is measurable. One source reports GPT-5.5 solving a 12-hour reverse-engineering challenge in 10 minutes. Another documents Dreadnode's Ares reaching Golden Ticket persistence in under 6 minutes at 95%+ success. Blue-team agents are still scored on how accurately they reconstruct what happened, not whether they stopped it. The gap is growing.

What to do

  1. Inventory every AI coding agent with write access to source repos, cloud credentials, or any non-local environment by end of week; enforce scoped tokens and human-confirmation gates on destructive commands (DROP, rm -rf, terraform destroy)

  2. Run 'npm ls vm2' and SBOM scan across all services including transitive dependencies; schedule immediate migration to isolated-vm or process-level sandboxing for any hit

  3. Convene threat-model review for Claude Managed Agents before enabling Dreaming/Outcomes/Multiagent features in production; require runtime guardrails including behavioral baselining and memory-store write kill-switch

  4. Draft an Agentic Commerce Acceptable Use Policy: spending ceilings, human-in-the-loop thresholds, approved platforms, and kill-switch procedures — enforce guardrails at the payment rail, not in the prompt

  5. Verify backup infrastructure is isolated from any environment an AI agent can reach; test restore from a scenario where prod and agent-accessible backups are both destroyed

The bottom line

Two pre-auth RCE chains with public exploit code dropped today — Apache httpd on default Debian/Docker and Traefik at CVSS 10.0 on your K8s ingress — while Drift proved that 700+ organizations can be silently owned through a single OAuth vendor compromise, AWS declared its own Bedrock C2 channel 'not a bug,' and a Cursor agent destroyed PocketOS production and backups in the first documented AI-agent-as-destructive-insider incident. The perimeter, the token layer, and the AI tool your developers are running all became demonstrated attack vectors today, not theoretical ones.