AI-Assisted Breach: Mexico's Government Agencies

Trace Incident Analysis Team

From late December 2025 to mid-February 2026, an unknown attacker used Anthropic’s Claude to breach Mexican government agencies, starting with the federal tax authority, SAT, according to Gambit Security (Los Angeles Times). Gambit says about 150GB was taken, including tax, voter, and civil registry records, and that at least 20 vulnerabilities were exploited. SAT says its access logs show no evidence of a breach, and the electoral institute, Jalisco, and Monterrey’s water utility also deny intrusions.

What happened

  1. Nov 27, 2025
    Claude Code first used on the attacker’s primary server
  2. Dec 27, 2025
    First session; about 40 minutes later, remote code execution on SAT
  3. Jan 1, 2026
    Root access on a Mexico City civil registry database server
  4. Jan 22, 2026
    Victims include the electoral institute, three states, and a water utility
  5. Mid-February 2026
    The campaign ends
  6. Late February 2026
    Gambit publishes initial findings; press coverage follows
  7. Apr 10, 2026
    Gambit publishes its full technical report

Gambit says the attacker was after government identities at scale, with access to documents covering about 195 million taxpayer records. Gambit found the attacker’s materials publicly exposed online, including extensive Claude conversations, and reconstructed the campaign from three of the attacker’s servers (Gambit Security).

The attacker framed the work as a bug bounty. Claude called requests to delete logs “red flags,” so the attacker supplied a 1,084-line playbook, saved as claude.md and loaded into later sessions. Claude then wrote a 285-line exploit routed through a residential proxy and built SSH and Chisel SOCKS tunnels into victim networks. Gambit counts 5,317 AI-executed commands across 34 sessions and says the attacker asked ChatGPT about lateral movement. Anthropic says Claude was jailbroken through persistent probing and still refused some requests; Anthropic and OpenAI, which says its models refused, banned the accounts (Los Angeles Times). Gambit has not attributed the attack to a group.

How it could have been caught

Every command the operator sent had to run on a government server, and those servers had stable habits. A baseline of process and network activity would have flagged the first shell started by SAT’s exploited web application, since that application had never started one. The Chisel tunnel that followed was a second new connection from the same process chain.

What this looks like in Trace

Here is one intrusion path traced inside SAT’s cloud, following Gambit’s account, which SAT disputes. The tools and attacker address come from Gambit’s report. Workload names, internal hosts, which address served each step, and timings are illustrative.

Network trace. Workload sat/public-portal, the internet-facing server Claude exploited on December 27.

  1. T+0:00
    tomcat → java (portal)
    Destination
    portal-db.internal:1521
    Baseline
    Known
  2. T+0:02
    java → sh → curl
    Destination
    165.22.184[.]26:443
    Baseline
    Anomaly
  3. T+0:06
    java → sh → chisel
    Destination
    165.22.184[.]26:443
    Baseline
    Anomaly
  4. T+0:09
    chisel → ssh
    Destination
    auth-server.internal:22
    Baseline
    Anomaly
  5. T+0:10
    chisel
    Destination
    taxpayer-db.internal:1521
    Baseline
    Anomaly
  6. T+0:10
    chisel
    Destination
    ldap.internal:389
    Baseline
    Anomaly
  7. T+0:31
    chisel
    Destination
    165.22.184[.]26:443, bulk
    Baseline
    Anomaly

Inference. Claude Code ran on the attacker’s own servers, so its model calls stayed outside SAT’s network. Any implant that needed a model inside SAT would have to cross the AI proxy with a key SAT never issued, or start a model process the host had never run.

Traceback. At T+0:10 the triage agent opens a case and follows the chain:

taxpayer-db query → chisel → sh → java (portal) → no deploy → no commit → no ticket → no author

The chain ends at the portal process with no change behind it, and that dead end is the finding.

Verdict: an outside intrusion reaching taxpayer records from a public web server. The case goes to SAT’s security team with the process chain, the tunnel, and the attacker’s address attached, about 10 minutes after the first shell and before the first bulk transfer.

This analysis reconstructs the incident from public reporting and walks through where Trace would have raised the first alert inside SAT’s cloud. Detection times are illustrative.

Read more

  1. Exchange Heist: The $6.34 Billion Binance Theft

  2. Agentic Espionage: VAPOR PANDA's ARTEX Campaign

  3. LLMjacking Agent: The Skynet Honeypot Capture