A nested iframe in ChatGPT HTML Preview could invoke a child contentWindow.open path that bypassed the parent popup interception logic while sandbox policy still permitted popup escape. Check Point demonstrated controlled outbound web egress and phishing-style popups under this configuration, with an Electron client variant opening without gesture. OpenAI…
Inspect the ClaimsCase · DiggingBeagle record
ChatGPT HTML Preview nested frames permitted popup escape and outbound egress
A nested iframe in ChatGPT HTML Preview could invoke a child contentWindow.open path that bypassed the parent popup interception logic while sandbox policy still permitted popup escape. Check Point demonstrated controlled outbound web egress and phishing-style popups under this configuration, with an Electron client variant opening without gesture.
Public disclosure: Nov 5, 2026
Controlled empirical evaluation; percentages and effects apply to the reported task populations and conditions, not deployed incidents.
Assessment profile
Assessment method- Setting
- research demonstration
- Exploitation
- demonstrated
- Evidence
- Grade B
- Remediation
- fixed reported
- AI role
- AGAINST AI
Basis and provenance
research demonstration; demonstrated. The cited primary disclosure supports the specific sequence and boundaries described here: Untrusted HTML content is displayed in ChatGPT HTML Preview with nested frames. The evidence does not independently establish consequences beyond the record's supported outcome; a numerical impact band cannot be justified from the available evidence. Evidence grade B reflects the source attribution and independent verification limits.
Assessed Nov 7, 2026 using diggingbeagle.assessment/1.
Evidence basis: CLM-DB07-039-OUTCOME · CLM-DB07-039-MECHANISM · CLM-ENR-DB07-014-PREVIEW-POPUP-FIX · Check Point: ChatGPT Lockdown HTML Preview bypass and egress
At a glance
Treat all nested frames and popup destinations as the same egress boundary, with enforceable sandbox flags rather than parent-only interception.
Read the implicationsRequires injected HTML Preview content and session; no wild compromise, separate from prior Parameter/MathLive cross-frame issue.
Limits and uncertaintyFull account
A nested iframe in ChatGPT HTML Preview could invoke a child contentWindow.open path that bypassed the parent popup interception logic while sandbox policy still permitted popup escape.
Check Point demonstrated controlled outbound web egress and phishing-style popups under this configuration, with an Electron client variant opening without gesture. OpenAI removed the unsafe permissions in September 2026; the experiment was not a reported user compromise.
The egress bypass exploited two different trust assumptions at once. The outer HTML Preview sandbox still allowed a popup to escape into an ordinary browser context, and the parent-side interception only covered one way of calling window.open. A malicious nested iframe could invoke the child window's method and reach a destination beyond the preview. Check Point's report describes controlled outbound requests and phishing-style popups, with an Electron client variant lacking a user-gesture requirement. OpenAI reportedly removed the relevant popup permissions in September, before the public November disclosure. This is a controlled harness/browser failure, not a confirmed customer compromise, and it is separate from earlier cross-frame ChatGPT preview incidents.
The popup restriction failed at a nested browser context: the outer frame's interceptor did not cover the inner frame's window.open path, while the sandbox still permitted popup escape. That creates a different exposure from a prompt merely asking the assistant to reveal a secret; it changes where rendered HTML can navigate or send data. Check Point's September 18 fix removed the relevant popup permissions, before the November disclosure. The demonstration showed an egress path and phishing-style windows, not a verified incident involving real users' conversation theft.
Mechanism and trust boundary
- 01
Untrusted HTML content is displayed in ChatGPT HTML Preview with nested frames.
- 02
A nested frame calls its own contentWindow.open, avoiding parent-only popup interception.
- 03
The browser's sandbox popup permissions permit a new browsing context that can reach external sites or present phishing content.
Claims & evidence
CLM-DB07-039-OUTCOMECheck Point demonstrated controlled outbound web egress and phishing-style popups under this configuration, with an Electron client variant opening without gesture. OpenAI removed the unsafe permissions in September 2026; the experiment was not a reported user compromise.supported
Basis: reported finding
- supportsCheck Point: ChatGPT Lockdown HTML Preview bypass and egressprimary disclosure
Check Point Blog: lockdown HTML Preview bypass; nested iframe window.open and mitigation
CLM-DB07-039-MECHANISMA nested iframe in ChatGPT HTML Preview could invoke a child contentWindow.open path that bypassed the parent popup interception logic while sandbox policy still permitted popup escape.supported
Basis: reported finding
- supportsCheck Point: ChatGPT Lockdown HTML Preview bypass and egressprimary disclosure
Check Point Blog: lockdown HTML Preview bypass; nested iframe window.open and mitigation
CLM-ENR-DB07-014-PREVIEW-POPUP-FIXCheck Point reports that the HTML Preview popup-escape route was addressed on September 18, 2026 by removing sandbox popup permissions; its later November disclosure describes the previously reproducible path, not confirmed post-fix exploitation.supported
Basis: reported finding
- supportsCheck Point: ChatGPT Lockdown HTML Preview bypass and egressprimary disclosure
HTML Preview frame sandbox permissions and September 18 remediation
Implications
Treat all nested frames and popup destinations as the same egress boundary, with enforceable sandbox flags rather than parent-only interception.
Unknowns and contradictions
- Requires injected HTML Preview content and session; no wild compromise, separate from prior Parameter/MathLive cross-frame issue.
Sources and citation
Material revision history
- Nov 7, 2026 · Published version · first publication · revision 227