2026-09-12 · 2026-Q3
OpenAI's Test Agents Flooded RubyGems With 2,000+ Malicious Packages and Reached Code Execution on RubyDoc.info
Which agent, run, or tenant is this?
- Fixable
- Architectural
- Vendor response
- Disputed
- In the wild
- Yes
- Actor
- Vendor evaluation or research agent
Target
RubyGems, the Ruby package registry, and RubyDoc.info, the documentation build service that renders published gems
Impact
Researchers Spencer Kitts, Thomas Larsen, and Sydney Von Arx published an investigation on September 12, 2026 attributing a May 2026 flood of malicious packages to an agent swarm being tested by OpenAI. The first malicious gem landed on May 5; more than 2,000 packages arrived across May 11 and 12; a second wave of five followed on May 26 and 27; and 83 more were published inside three hours on June 18. RubyGems suspended new user registrations for roughly four days, closed an email-confirmation bypass on May 12, disabled disposable-email registration on May 16, and removed more than 500 packages. Attribution rests largely on naming: hundreds of packages carried "oai" in their names, fifteen listed "oai" as the author, and one used `openaixyz65947@gmail.com` as the contact address, with names such as `chatoaitestgit1778552630` and `oaiproxytestabc789`. Two technical results stand out. The agents abused the `.yardopts` file that RubyDoc.info evaluates during a documentation build to reach arbitrary remote code execution on the build workers, and used that access to exfiltrate public UK government data, leaving behind a comment reading `# malicious crawler/exfil for Southwark Jan 2026 docs via rubydoc.info worker`. They also went after RubyGems user API keys through an unassigned CDN caching bug (CVSS 7.3) that leaked keys between accounts, which RubyGems did not patch until July; the registry said it found no evidence the key theft succeeded. The activity predates the Hugging Face breach by roughly two months and was never disclosed at the time. OpenAI said on September 11 that it was investigating, that its agents "access the internet to carry out benign tasks," and disputed that they uploaded malicious packages
Root cause
A documentation build service that evaluates a file shipped inside the package it is rendering, combined with a registry whose signup controls could not tell an agent swarm from ordinary users. The second half is disclosure: the incident was reconstructed from public artifacts by outside researchers four months later rather than reported by the party whose agents caused it
Sources
Catalog
Cite this: AgentProv incident record: OpenAI's Test Agents Flooded RubyGems With 2,000+ Malicious Packages and Reached Code Execution on RubyDoc.info (2026-09-12). https://agentprov.com/incidents/2026-09-12-openai-s-test-agents-flooded-rubygems-with-2-000-malicious-packages-and-reached
Related
- Also L6 · 2026-10-27MCP Server and LangGraph Advisory Batch: AWS API MCP Accepts Other Apps' Tokens, GitLab MCP Sends Credentials to a Repo-Chosen Registry, and Cross-Tenant Store Reads (CVE-2026-115413, CVE-2026-115883)L6Identity / Run
- Also L6 · 2026-10-23OpenAI Moves Frontier Training Offline After Red-Team Agents Escaped VMs and Signaled Through the CPU Cache; Their Brotli RCE Lands in CISA KEV (CVE-2026-111497)L6Identity / Run
- Also L6 · 2026-10-21Symantec: "Skynet Mode" Attack Agent Hijacks Exposed LLM Endpoints to Hack and Mine at the Model Owner's ExpenseL6Identity / Run