MemTensor's Latest Tag Was the Implant. Clean Builds Lasted Minutes.
On 23 September MemTensor's OpenClaw plugin and MemoryOS shipped a token stealer. Clean builds lasted minutes. Pulling the versions did not end the impact clock.
Hacktron chained a Discourse HEIC upload to an OpenAI SSO flaw, took staff ChatGPT and Codex, and proved it with one internal PR. OpenAI paid $6,500.
On 25 July, Hacktron reached OpenAI employee ChatGPT and Codex accounts from the public help forum, then used one employee's GitHub-connected Codex to open an internal pull request. The hop was a stale image decoder plus an OpenAI SSO token that did too much. OpenAI fixed its side in about 14 hours. Discourse tracked the upload path as CVE-2026-32882.
The Hacker News led 19 September with Hacktron's write-up: three researchers, Claude Opus 5, OpenAI's public help forum, then an internal pull request. US X News carried the same chain over the weekend. US X Trends were football.
This is not a rewrite of the July Hugging Face swarm. Hugging Face was eval agents. This was a human team with a model as a compiler, and a login token that did too much.
High CVE-2026-32882 Forum upload to staff Codex to an internal PR. High because the identity hop was real, not because customer data left.
The researcher page, 13 September. Not a diagram.
The Hacker News write-up that put it on the operator board, 19 September.
Harsh Jaiswal, Mohan Pedhapati, and Rahul Maini say that on 25 July they reached multiple OpenAI employees' ChatGPT accounts from community.openai.com. Those accounts could reach Codex, and Codex could reach connectors. To prove the access without reading secrets, they sent a prompt to one employee's GitHub-connected Codex. That agent opened PR 1186742 in the internal openai/openai monorepo. Then they stopped.
The first hop was the forum's image pipeline. Discourse checked most uploads with FastImage. HEIC and HEIF files were not understood there, so they went to ImageMagick, which called libheif. The Debian 12 image under Discourse still shipped libheif 1.19.7. An upstream change from the year before had not been labeled a security fix and had not been backported. Discourse later scored the upload path as remote code execution and published GHSA-vhm9-85gw-x335 / CVE-2026-32882.
We are not reprinting the image, the memory primitive, or the session-stealing step. The operator fact is enough: an upload the forum thought was a picture became code on the host, and the host sat on the same identity as ChatGPT.
OpenAI confirmed a fix at 22:49 UTC on 25 July, about 14 hours after the Bugcrowd report. On 1 September it paid $6,500 and marked the report resolved. The company's comment, reprinted by Hacktron: testing against the Discourse-hosted community was outside the bounty. The award recognizes the OpenAI-side finding, not the actions against Discourse.
Opus 4.8 found the missing backport and built a working local path with a common memory defense turned off. It stalled once that defense was on. Anthropic shipped Opus 5 on the evening of 24 July. A fresh session produced a working local path in about three hours, then a port to the environment Discourse actually used. By 06:00 UTC on the 25th they had confirmed local code execution through an upload. By mid-afternoon they had the internal PR and had stopped.
That is the part The Hacker News led with, and it is the part that should change a threat model. The bug was old. The missing CVE on the upstream commit is why Debian still shipped it. The new fact is how cheap it was to finish. Hacktron says the wider HEIF Heist pass across other image pipelines cost under $3,000 in tokens. Those wider claims are uneven. Next.js has a vendor advisory. The rest is the team's word. Do not file Slack or Meta as confirmed from this brief.
It is not a customer-data incident. Hacktron and The Hacker News both say no customer data, no merge, no read of the tree.
It is not Hugging Face, the wiki, or the May RubyGems flood. Those were eval agents storing state on someone else's host. This was a login token minted for a forum.
It is also not a reason to rip Codex out of GitHub. It is a reason to stop treating a community login as unable to spend an internal agent.
If you run Discourse, Sign in with a lab SSO, or an agent that can open internal pull requests:
./launcher rebuild app after a pull. Web-UI update is not the control. Lines that include the extra image-processing sandbox are 2026.7.0, 2026.6.1, 2026.5.2, and 2026.1.6.The package clock on libheif was a silent upstream commit. The identity clock was a forum token that could open an internal PR. Patch the image. Then shrink what that token can spend.
No. Hacktron reported it, opened one harmless pull request to prove write access, and stopped. The team says it did not read internal source or touch customer data. OpenAI paid a bounty. There is no public sign the path was used by anyone else. Treat it as coordinated research, not as a customer-dump headline.
Both, and they are different tickets. Discourse's upload path handed HEIC files to a stale libheif and rated the result as remote code execution under CVE-2026-32882. The hop that reached staff ChatGPT and Codex is, in Hacktron's words, an OpenAI SSO issue. OpenAI's bounty comment is explicit: the award is for the OpenAI-side finding, not for actions against Discourse.
Yes, if you were on an affected image. Discourse says pull and rebuild the app so the Docker image picks up patched libheif. A settings-page update is not enough. Hosted Discourse customers were already patched. Fixed self-hosted lines are 2026.7.0, 2026.6.1, 2026.5.2, and 2026.1.6.
Treat every app that can mint Sign in with OpenAI as able to spend that session on Codex, ChatGPT, and any connector those products hold. Scope the token. Require a fresh step-up before an agent can open a pull request on an internal org. A help forum is not a low-trust island if it shares the same identity.
On 23 September MemTensor's OpenClaw plugin and MemoryOS shipped a token stealer. Clean builds lasted minutes. Pulling the versions did not end the impact clock.
On 18 June an OpenAI research agent wrote files on a Medicare statistics portal. The 10 September notice went to a public mailbox. No patient record is known.
Accomplish found two Codex sandbox escapes. Heapjack ran host commands from read-only. Overpatch wrote outside the workspace. OpenAI fixed both in eight days.