Vai al contenuto
AI.info

The Pulse

Ricercatori hanno usato Codex di OpenAI per aprire una pull request in un monorepo

I ricercatori di Hacktron affermano che una vulnerabilità in un percorso di elaborazione delle immagini e una falla nell’SSO di OpenAI hanno permesso loro di raggiungere l’account Codex di un dipendente e creare una pull request nel monorep

Ricercatori hanno usato Codex di OpenAI per aprire una pull request in un monorepo

AI.info Team ·

Un percorso di tre giorni nell’infrastruttura del codice di OpenAI

I ricercatori di Hacktron affermano di essere riusciti a raggiungere il monorepo interno di OpenAI in meno di 72 ore, individuando un percorso dal forum pubblico di assistenza dell’azienda agli account ChatGPT e Codex dei dipendenti. I ricercatori affermano di non aver letto il codice sorgente interno. Hanno invece usato l’account Codex di un dipendente per aprire la pull request 1186742 nel repository privato openai/openai di OpenAI, come prova che l’account vi avesse accesso.

Secondo la cronologia di Hacktron, il percorso dalla scoperta iniziale all’accesso al repository di OpenAI è durato meno di 72 ore.

La segnalazione descrive una catena d’attacco iniziata con una falla nella sicurezza della memoria in libheif, una libreria per l’elaborazione delle immagini usata tramite ImageMagick nel software Discourse in esecuzione su community.openai.com. Hacktron afferma che la catena ha raggiunto il sistema di single sign-on di OpenAI, poi ChatGPT, Codex e un’organizzazione GitHub collegata.

I ricercatori affermano che OpenAI ha risolto la parte di sua competenza circa 14 ore dopo aver ricevuto la segnalazione, il 25 luglio. Il 1° settembre OpenAI ha pagato una ricompensa di 6.500 dollari e ha contrassegnato la segnalazione come risolta. Il premio riguardava la vulnerabilità riscontrata sul lato OpenAI, mentre i test sul forum ospitato da Discourse erano esclusi dal programma bug bounty di OpenAI.

NeshDevTech intitola il suo contenuto «Hacker News» e rimanda all’articolo completo sul sito di Hacktron. Il link alla pull request è stato oscurato su richiesta di OpenAI, quindi la documentazione pubblica non mostra i contenuti del repository né la modifica esatta proposta.

Il caricamento di immagini è diventato il primo punto d’accesso

Hacktron afferma che l’indagine è iniziata il 23 luglio, quando il team ha esaminato la gestione da parte di Discourse del caricamento di immagini HEIC e HEIF. Poiché il normale percorso di verifica delle immagini non supportava questi formati, i file venivano passati a ImageMagick per la conversione, esponendo il parser libheif a input controllati da un attaccante.

I ricercatori hanno scoperto che le modifiche di sicurezza apportate al codice upstream non erano state retroportate nel pacchetto usato dall’installazione di Discourse. Descrivono la vulnerabilità come un overflow del buffer heap che, durante la decodifica HEIC, poteva consentire operazioni di lettura e scrittura fuori dai limiti. La segnalazione afferma che all’epoca l’immagine Discourse interessata usava Debian 12 e includeva la versione 1.19.7 di libheif.

Hacktron afferma che la modifica al codice volta a correggere il comportamento vulnerabile era stata apportata upstream l’anno precedente, ma non era stata identificata come una correzione di sicurezza e non aveva ricevuto un CVE. In seguito, i ricercatori hanno segnalato il problema a Discourse tramite HackerOne. Secondo la cronologia contenuta nella segnalazione, Discourse ha risposto il 26 luglio, aveva una correzione pronta entro il 27 luglio e ha pubblicato un avviso il 28 luglio.

L’avviso collegato nella segnalazione, GHSA-vhm9-85gw-x335, include indicazioni per applicare la patch e ricompilare le installazioni interessate. Hacktron afferma che Discourse ha anche iniziato a eseguire ImageMagick in una sandbox, come misura aggiuntiva di contenimento.

Claude ha aiutato a trasformare la falla in codice funzionante

Durante lo sviluppo dell’exploit, i ricercatori hanno usato i modelli Claude di Anthropic. Hacktron afferma che Claude Opus 4.8 ha aiutato a individuare le patch di sicurezza upstream mancanti e a produrre un exploit in condizioni locali semplificate, ma diversi tentativi sono falliti quando nella configurazione di destinazione era abilitata la randomizzazione della disposizione dello spazio degli indirizzi.

Dopo il rilascio di Claude Opus 5 da parte di Anthropic, Hacktron afferma che una nuova sessione ha prodotto in meno di tre ore un exploit funzionante per un Mac ARM64. Il team lo ha poi adattato all’ambiente x86-64 e all’allocatore di memoria usati da Discourse. Entro le 6:00 UTC del 25 luglio, affermano i ricercatori, avevano confermato l’esecuzione remota di codice in locale tramite il caricamento di un’immagine.

Hacktron ha poi inserito il modello in un ciclo autonomo di raggiungimento dell’obiettivo contro un’istanza Discourse Cloud configurata come obiettivo controllato. Quando i ricercatori hanno controllato di nuovo alle 10:00 UTC, l’agente aveva ottenuto l’esecuzione remota di codice su Discourse Cloud e ne aveva dimostrato l’accesso leggendo /etc/hosts. Secondo la segnalazione, il team ha poi usato l’exploit generato contro l’istanza del forum di OpenAI.

La segnalazione non descrive il processo come completamente autonomo. Hacktron afferma che era ancora necessaria la guida di persone esperte, mentre i modelli hanno ridotto il tempo necessario per adattare l’exploit a un nuovo ambiente.

La debolezza dell’SSO ha ampliato la portata dell’attacco

L’esecuzione remota di codice sul forum era solo il primo passo. Hacktron afferma che il flusso «Accedi con OpenAI» dell’azienda creava un percorso dall’ambiente Discourse compromesso agli account ChatGPT e Codex. Secondo i ricercatori, prima della correzione gli account degli utenti attivi del forum, compresi i dipendenti di OpenAI, avrebbero potuto essere compromessi.

Un account di dipendente compromesso aveva Codex collegato all’organizzazione GitHub di OpenAI. Hacktron afferma che i ricercatori hanno inviato un prompt tramite quell’account, chiedendo a Codex di aprire una pull request nel monorepo interno. Si sono fermati dopo aver creato la prova dell’accesso e non hanno esaminato il codice interno.

La segnalazione indica nella configurazione dell’SSO la vulnerabilità di escalation specifica di OpenAI. Discourse è stato il percorso usato per dimostrarla, ma Hacktron afferma che la compromissione di un altro servizio di OpenAI, proprietario o di terze parti, che utilizzasse lo stesso sistema di identità avrebbe potuto creare un percorso analogo verso ChatGPT e Codex.

La segnalazione afferma anche che la cronologia originale, dalla scoperta all’accesso al repository, è stata inferiore a 72 ore. I ricercatori hanno inviato la segnalazione iniziale tramite il programma Bugcrowd di OpenAI tra le 8:00 e le 10:00 UTC del 25 luglio, poi l’hanno aggiornata più tardi quel giorno con la prova dell’accesso all’account e della pull request.

Cosa dimostra l’incidente e cosa no

Le prove pubbliche dimostrano che, secondo Hacktron, i ricercatori hanno ottenuto un accesso sufficiente per creare una pull request nel repository interno di OpenAI. Non dimostrano che abbiano copiato il codice sorgente di OpenAI, avuto accesso ai pesi dei modelli, modificato sistemi di produzione o raggiunto tutti i servizi collegati citati nella segnalazione.

Hacktron afferma che la potenziale portata comprendeva GitHub, Slack e la posta elettronica, perché gli utenti possono collegare servizi a ChatGPT e Codex. Si tratta di una descrizione della possibile portata, non dell’affermazione che i ricercatori abbiano avuto accesso a ciascun servizio. La segnalazione afferma che il team si è fermato dopo la pull request di prova di concetto e non ha proseguito i test.

La segnalazione colloca l’incidente all’interno di un progetto più ampio che esamina libheif in software usati da Slack, Meta, GitHub Enterprise, Ruby on Rails e diversi framework Node.js. Hacktron afferma che il progetto più ampio ha coinvolto tre ricercatori, è durato due mesi e ha comportato una spesa inferiore a 3.000 dollari in token dei modelli.

Per chi si occupa di difesa, il problema immediato è più circoscritto rispetto alla tesi più ampia sull’hacking assistito dall’IA: l’elaborazione di immagini non attendibili era affiancata a un sistema di accesso in grado di raggiungere gli strumenti per sviluppatori. Questa combinazione ha trasformato una vulnerabilità nel caricamento di file in un accesso al repository, senza che i ricercatori dovessero compromettere direttamente GitHub.

Stato delle patch e questioni ancora aperte

Hacktron afferma che OpenAI ha confermato la correzione il 25 luglio e pagato la ricompensa il 1° settembre. La risposta di Discourse ha seguito il proprio processo di segnalazione, con una patch e l’ulteriore isolamento di ImageMagick in una sandbox. I ricercatori raccomandano inoltre agli operatori di aggiornare libheif e libde265, isolare i carichi di lavoro di elaborazione delle immagini e disabilitare la decodifica HEIF o AVIF quando non è necessaria.

La segnalazione lascia senza risposta diverse domande. Nei materiali citati da Hacktron, OpenAI non ha identificato pubblicamente la configurazione SSO interessata, e la pull request oscurata impedisce a chiunque dall’esterno di verificare autonomamente la prova relativa al repository. La ricostruzione pubblica non indica nemmeno quanti account di dipendenti o utenti siano stati esposti prima della correzione.

Il percorso d’accesso documentato è il seguente: un caricamento di immagini, un decodificatore vulnerabile, l’esecuzione remota di codice sul forum di OpenAI, un’escalation tramite SSO, un account Codex collegato e una pull request nel monorepo interno di OpenAI. La ricompensa era di 6.500 dollari e la pull request è stata creata il 25 luglio 2026.

Fonte

Esplora

Altri articoli