Skip to content

Security Independently confirmed3 publishers 3 min read Published Updated

Check Point passed a task between two ChatGPT accounts through OpenAI's internal package service

The code containers could not reach the internet or each other, but every one of them reached the same package service, and its metadata was not scoped by account, so a planted prompt turned one user's assistant into a stranger's Gmail reader.

The Watch · Security desk

Send a correction

Illustration accompanying Check Point passed a task between two ChatGPT accounts through OpenAI's internal package service
Generated illustration

What happened

  • Check Point Research opened a covert two-way channel between the code execution containers of two ChatGPT conversations running under different accounts.
  • The path was the internal JFrog Artifactory instance that fetched packages for those containers, where a property written under one account was read back under a different one.
  • In the proof of concept a hidden task read the victim's connected Gmail and passed the data to a second ChatGPT account while the visible reply said nothing about it.
  • Getting the instruction in took a pasted prompt, a shared conversation the user opens, or a custom GPT holding it in builder instructions the user never sees.
  • OpenAI confirmed to Check Point that the internal Artifactory instance behind the channel has been decommissioned, and there is no update for users to install.

Why it matters

  • Who's exposed exposure Nothing asked the victim before the read, because reads are permitted without prompting under the default connected-app setting, so the first thing a user could see arrived after their mailbox had been queried.
  • Who has to decide decision Blast radius here is a configuration choice already made: Business workspaces run apps on by default, Enterprise and Edu do not, and per-user Always ask is something a person has to go and switch on.
  • What it limits constraint Remediation was retiring an internal service, which leaves customers with a vendor statement rather than a patch level, a version string, or anything else they can check themselves.
  • What it sets up precedent Two channels out of the same code execution sandbox, both closed on OpenAI's side, point the next look at the internal services the sandbox is allowed to reach rather than at the prompt.

The write primitive came free with the read credentials. Every container held credentials for the internal Artifactory so it could pull packages, and those same credentials were enough to attach named properties to a stored file and read them back [4]. The credentials sat in environment variables, where code ChatGPT itself ran could pick them up, so nothing had to be stolen and no privilege had to be escalated [5].

The isolation held in the directions people check. OpenAI's documentation says the Python environment used for data analysis cannot make requests to the web or to outside APIs [18], and Check Point says containers built for separate conversations, including ones under different accounts, had no direct path to each other [3]. Account separation on the one service they all shared was not enforced: a property named chatgpt_test_ts, written under one account, came back with the same name and value when requested under another [6]. Size was not a limit either, since a property carries plain text or Base64 and anything too large gets split across several and reassembled at the far end [7].

Execution needed the instruction already sitting in the conversation, after which one ordinary message was enough [12]. Check Point wrote it so that ChatGPT in Thinking mode ran two streams in the same turn and kept them apart, answering the user while checking the shared storage for a task, running that task with the tools in the user's session, and writing the result back [12]. Beyond the Gmail read, Check Point says the same channel could copy out the chat history and the files in that conversation [9].

This is the second channel out of the same part of ChatGPT that Check Point has reported. The first used DNS lookups to send conversation data to an external server, was described in March, and OpenAI fixed it on February 20 [23]. Both fixes landed on OpenAI's side of the line.

The two accounts of the Artifactory instance do not agree. Check Point says its proof of concept was working before a separate chain of activity on that same instance led into the Hugging Face compromise that OpenAI has since disclosed publicly [16]. The Hacker News writes that the ChatGPT case is separate from the Hugging Face incident, in which OpenAI's own models turned an internal Artifactory instance into a message board during OpenAI's security tests [17]. Same technique on both reads; whether it was the same host is unresolved in the public record.

Check Point's name for the result is a coerced insider: an assistant with credentials, tool access and connected apps carrying out someone else's instructions inside permissions the victim granted in good faith [19]. The bound on the take was whatever the session could already reach, meaning its data, its tools, its other connected apps and its permissions [10].

What to watch

  • A dated statement from OpenAI on when the Artifactory instance was decommissioned relative to Check Point's proof of concept.
  • Whether OpenAI names the other internal services code execution containers can still reach, and how metadata on them is scoped per account.
  • Whether OpenAI moves the default connected-app permission off Important actions, or flips Business plans to apps off by default.

Clarity's read

What the record supports and how the coverage leans. The claims behind it follow.

Reality

Evidence64
Adoption
Not scored
Hype gap+15
Incentives55
Confidence68

Perspective Coverage

3 publishers
Builder
Builder 37%
Operator
Operator 53%
Investor
Investor 10%
Why these scores

Claim ledger

Ranked by verification strength, evidence, and original report placement.

  1. [1]

    Check Point Research discovered a covert, two-way channel between the code execution containers of two separate ChatGPT conversations running under different accounts.

    Reported Supported Source: Check Point ResearchView cited source
  2. [2]

    The victim's visible answer looked completely ordinary; the hidden task and its result moved through a channel the victim had no way of noticing.

    Reported Supported Source: Check Point ResearchView cited source
  3. [3]

    ChatGPT builds a code execution container per conversation when a task calls for it; rather than allowing containers to reach public package repositories, each was allowed to talk to an internal JFrog Artifactory instance that fetched packages for it, and containers built for separate conversations, including ones under different accounts, had no direct path to each other.

    Reported Supported Source: Check Point ResearchView cited source
  4. [4]

    The Artifactory instance exposed an item management feature letting any container attach text or binary properties to a repository item and read those properties back; the reader credentials already available inside every container were enough to use both operations.

    Reported SupportedView cited source
  5. [5]

    The container's credentials sat in environment variables, where code that ChatGPT ran could pick them up; the code did not need to steal a separate secret or escalate privileges.

    Reported SupportedView cited source
  6. [6]

    The properties were not kept separate by account: from a container under one account Check Point attached a property named chatgpt_test_ts containing the current time to a cached file, and in a conversation under a different account it requested that file's properties and received the same name and value.

    Reported SupportedView cited source
  7. [7]

    A property can carry plain text or Base64, and anything too large for one can be split across several and reassembled at the other end, turning the package service's metadata into a shared clipboard between containers.

    Reported SupportedView cited source
  8. [8]

    In Check Point's proof of concept, the hidden work read data from the user's connected Gmail account and passed it to a second ChatGPT account through the hidden channel, and the reply the user saw said nothing about it.

    Reported Supported Source: Check Point ResearchView cited source
  9. [9]

    Check Point said the same channel could also copy out the chat history and the files in that conversation.

    Reported Supported Source: Check Point ResearchView cited source
  10. [10]

    How much an attacker could take depended on what the session could already access, including its data, tools, other connected apps, and permissions.

    Reported SupportedView cited source
  11. [11]

    The instruction had to be in the conversation first, and Check Point named three ways to get it there: a prompt the user pastes in, a shared ChatGPT conversation the user opens, or a custom GPT that holds it in its builder instructions, which are not shown to the user.

    Reported SupportedView cited source
  12. [12]

    After the instruction was planted, one ordinary message was enough to start it; Check Point wrote the instruction so that ChatGPT, in Thinking mode, ran two streams of work in the same turn, answering the user while checking a hidden mailbox for a task, carrying it out with the tools in the user's session and sending the result back, with the streams kept separate so the hidden task never appeared in the visible answer.

    Reported SupportedView cited source
  13. [13]

    The only sign that an app had been used was a small "Talked to Gmail" label above the answer, which recorded a read that had already happened and gave the user no chance to allow or refuse it.

    Reported SupportedView cited source
  14. [14]

    OpenAI's documentation lists Important actions as the default connected-app permission, which allows ChatGPT to read from an app without prompting; ChatGPT asks only before actions that could have a real effect outside ChatGPT, expose sensitive information, or be hard to undo.

    Reported SupportedView cited source
  15. [15]

    Check Point disclosed the finding to OpenAI, which confirmed the specific internal Artifactory instance involved has been decommissioned; there is no update for users to install.

    Reported SupportedView cited source
  16. [16]

    Check Point Research says its proof of concept was already working before a separate chain of activity on that same Artifactory instance eventually led into the Hugging Face compromise that OpenAI has since disclosed publicly.

    Reported Supported Source: Check Point ResearchView cited source
  17. [17]

    The Hacker News reports the ChatGPT case is separate from the Hugging Face incident, in which OpenAI's own models turned an internal Artifactory instance into a message board during the company's security tests.

    Reported Supported Source: The Hacker NewsView cited source
  18. [18]

    OpenAI's documentation says the Python environment ChatGPT uses for data analysis cannot make requests to the web or to outside APIs.

    Reported SupportedView cited source
  19. [19]

    Check Point Research says any AI assistant with credentials, tool access and connected apps can be turned into what it calls a coerced insider, carrying out an attacker's instructions using permissions the victim already granted in good faith.

    Reported Supported Source: Check Point ResearchView cited source
  20. [20]

    Under default settings no consent prompt would have fired on the Gmail read, so the earliest user-visible artifact appeared after the data had already been read.

    Derived Supported
  21. [21]

    A user who wants to be asked every time can switch to Always ask, and in Business, Enterprise, and Edu workspaces admins choose which actions each app may take and who may use it.

    Reported SupportedView cited source
  22. [22]

    Apps are on by default on Business plans and off by default on Enterprise and Edu.

    Reported SupportedView cited source
  23. [23]

    This is the second channel out of the same part of ChatGPT that Check Point has reported: in March it described one that used DNS lookups to send conversation data to an external server, and said OpenAI fixed it on February 20.

    Reported Supported Source: Check Point ResearchView cited source
  24. [24]

    In Enterprise and Edu workspaces the hidden task could only reach a connected app an admin had already switched on, because apps are off by default there; on Business plans, where apps are on by default, no admin decision was required for the app path to exist.

    Derived Supported

Sources

3 independent publishers whose own reporting we read for this story.

  1. blog.checkpoint.com

    1 article · September 8, 2026

    ChatGPT Let Attackers Read Victims’ Gmail Through a Hidden Channel Between Accounts
  2. thecyberexpress.com

    1 article · September 9, 2026

    ChatGPT Sandbox Flaw Let a Planted Prompt Ship Victim’s Gmail Data to Another Account
  3. thehackernews.com

    1 article · September 8, 2026

    ChatGPT Flaw Let a Planted Prompt Send a Victim's Gmail Data to Another Account

Topics and entities