Grok Build CLI 0.2.93: Sikkerhetshull avslørt – stille full repo-opplasting, uredigerte hemmeligheter og ødelagt personvernbryter
En wire level gjennomgang av xAIs Grok Build CLI 0.2.93 fant at verktøyet i stillhet laster opp hele Git repositorier som bundler til Google Cloud Storage – 5,10 GiB data mot 192 KB modelltrafikk, en 27 800× forskjell. Personvernbryteren «Improve the model» stoppet ikke opplastingen; serveren fortsatte å akseptere G...
Publisert avRedigert med DeepSeek-V4-FlashBilder generert med GPT Image 1.5
En wire level gjennomgang av xAIs Grok Build CLI 0.2.93 fant at verktøyet i stillhet laster opp hele Git repositorier som bundler til Google Cloud Storage – 5,10 GiB data mot 192 KB modelltrafikk, en 27 800× forskjell.
Personvernbryteren «Improve the model» stoppet ikke opplastingen; serveren fortsatte å akseptere Git bundle biter med HTTP 200 svar selv etter at bryteren var slått av.
Berørte utviklere bør rotere alle legitimasjonsopplysninger som fantes i .env filer eller Git historikk brukt med Grok Build, og kjøre alle kodeagenter inne i en container med egress kontroll og full pakkefangsttesting.
Search & fact-check with cited sources for What security flaws were revealed by a wire-level analysis of xAI's Grok Build CLI version 0.2.93Visualization of a wire-level analysis showing network flows from a developer machine to xAI's Google Cloud Storage bucket. The analysis revealed a 27,800× data disparity between model turns and background repository uploads.
AI Prompt
Create a landscape editorial hero image for this Studio Global article: Search & fact-check with cited sources for What security flaws were revealed by a wire-level analysis of xAI's Grok Build CLI version 0.2.93. Article summary: Now I have comprehensive source material. Here is the fact-checked answer.. Topic tags: general, general web, user generated. Style: premium digital editorial illustration, source-backed research mood, clean composition, high detail, modern web publication hero. Use reference image context only for broad subject, composition, and topical grounding; do not copy the exact image. Avoid: logos, brand marks, copyrighted characters, real person likenesses, fake screenshots, UI text, readable text, watermarks, charts with fake numbers, clickbait thumbnails, icons, and tiny thumbnail layouts. Make it useful as an illustrative visual, not as factual evidence.
openai.com
En uavhengig sikkerhetsforsker ved Cereblab (@cereblab) har utført en reproduserbar wire-level-gjennomgang av xAIs Grok Build CLI versjon 0.2.93 ved hjelp av mitmproxy, og publisert hele analysen som en GitHub Gist . Analysen avdekket tre alvorlige sikkerhetsfeil som direkte motsier selskapets «lokal-først»-posisjonering og bryter med utvikleres forventninger om personvern.
Studio Global AI
Continue your research
This page includes a source-backed answer you can continue inside Studio Global.
What is the short answer to "Grok Build CLI 0.2.93: Sikkerhetshull avslørt – stille full repo-opplasting, uredigerte hemmeligheter og ødelagt personvernbryter"?
En wire level gjennomgang av xAIs Grok Build CLI 0.2.93 fant at verktøyet i stillhet laster opp hele Git repositorier som bundler til Google Cloud Storage – 5,10 GiB data mot 192 KB modelltrafikk, en 27 800× forskjell.
What are the key points to validate first?
En wire level gjennomgang av xAIs Grok Build CLI 0.2.93 fant at verktøyet i stillhet laster opp hele Git repositorier som bundler til Google Cloud Storage – 5,10 GiB data mot 192 KB modelltrafikk, en 27 800× forskjell. Personvernbryteren «Improve the model» stoppet ikke opplastingen; serveren fortsatte å akseptere Git bundle biter med HTTP 200 svar selv etter at bryteren var slått av.
What should I do next in practice?
Berørte utviklere bør rotere alle legitimasjonsopplysninger som fantes i .env filer eller Git historikk brukt med Grok Build, og kjøre alle kodeagenter inne i en container med egress kontroll og full pakkefangsttesting.
Grok Build CLI 0.2.93: Sikkerhetshull avslørt – stille full repo-opplasting, uredigerte hemmeligheter og ødelagt personvernbryter
En wire level gjennomgang av xAIs Grok Build CLI 0.2.93 fant at verktøyet i stillhet laster opp hele Git repositorier som bundler til Google Cloud Storage – 5,10 GiB data mot 192 KB modelltrafikk, en 27 800× forskjell. Personvernbryteren «Improve the model» stoppet ikke opplastingen; serveren fortsatte å akseptere G...
Publisert avRedigert med DeepSeek-V4-FlashBilder generert med GPT Image 1.5
En wire level gjennomgang av xAIs Grok Build CLI 0.2.93 fant at verktøyet i stillhet laster opp hele Git repositorier som bundler til Google Cloud Storage – 5,10 GiB data mot 192 KB modelltrafikk, en 27 800× forskjell.
Personvernbryteren «Improve the model» stoppet ikke opplastingen; serveren fortsatte å akseptere Git bundle biter med HTTP 200 svar selv etter at bryteren var slått av.
Berørte utviklere bør rotere alle legitimasjonsopplysninger som fantes i .env filer eller Git historikk brukt med Grok Build, og kjøre alle kodeagenter inne i en container med egress kontroll og full pakkefangsttesting.
Search & fact-check with cited sources for What security flaws were revealed by a wire-level analysis of xAI's Grok Build CLI version 0.2.93Visualization of a wire-level analysis showing network flows from a developer machine to xAI's Google Cloud Storage bucket. The analysis revealed a 27,800× data disparity between model turns and background repository uploads.
AI Prompt
Create a landscape editorial hero image for this Studio Global article: Search & fact-check with cited sources for What security flaws were revealed by a wire-level analysis of xAI's Grok Build CLI version 0.2.93. Article summary: Now I have comprehensive source material. Here is the fact-checked answer.. Topic tags: general, general web, user generated. Style: premium digital editorial illustration, source-backed research mood, clean composition, high detail, modern web publication hero. Use reference image context only for broad subject, composition, and topical grounding; do not copy the exact image. Avoid: logos, brand marks, copyrighted characters, real person likenesses, fake screenshots, UI text, readable text, watermarks, charts with fake numbers, clickbait thumbnails, icons, and tiny thumbnail layouts. Make it useful as an illustrative visual, not as factual evidence.
openai.com
En uavhengig sikkerhetsforsker ved Cereblab (@cereblab) har utført en reproduserbar wire-level-gjennomgang av xAIs Grok Build CLI versjon 0.2.93 ved hjelp av mitmproxy, og publisert hele analysen som en GitHub Gist . Analysen avdekket tre alvorlige sikkerhetsfeil som direkte motsier selskapets «lokal-først»-posisjonering og bryter med utvikleres forventninger om personvern.
Studio Global AI
Continue your research
This page includes a source-backed answer you can continue inside Studio Global.
What is the short answer to "Grok Build CLI 0.2.93: Sikkerhetshull avslørt – stille full repo-opplasting, uredigerte hemmeligheter og ødelagt personvernbryter"?
En wire level gjennomgang av xAIs Grok Build CLI 0.2.93 fant at verktøyet i stillhet laster opp hele Git repositorier som bundler til Google Cloud Storage – 5,10 GiB data mot 192 KB modelltrafikk, en 27 800× forskjell.
What are the key points to validate first?
En wire level gjennomgang av xAIs Grok Build CLI 0.2.93 fant at verktøyet i stillhet laster opp hele Git repositorier som bundler til Google Cloud Storage – 5,10 GiB data mot 192 KB modelltrafikk, en 27 800× forskjell. Personvernbryteren «Improve the model» stoppet ikke opplastingen; serveren fortsatte å akseptere Git bundle biter med HTTP 200 svar selv etter at bryteren var slått av.
What should I do next in practice?
Berørte utviklere bør rotere alle legitimasjonsopplysninger som fantes i .env filer eller Git historikk brukt med Grok Build, og kjøre alle kodeagenter inne i en container med egress kontroll og full pakkefangsttesting.
Data-eksfiltrasjon som motsier «Lokal-Først»-markedsføringen
Forskeren identifiserte to vesentlig forskjellige datakanaler som forlot utviklerens maskin :
Modellturkanalen (POST /v1/responses): filer agenten åpnet ble serialisert inn i modellforespørsler. Dette er forventet oppførsel for en skybasert kodeagent.
Lagringskanalen (POST /v1/storage): hele repositoriet ble uavhengig pakket som en git bundle og lastet opp i ~75 MB biter til en Google Cloud Storage-bøtte kalt grok-code-session-traces.
Skalaforskjellen beviste at opplastingen ikke var drevet av hva agenten leste. På et 12 GB testrepo flyttet lagringskanalen 5,10 GiB fordelt på 73 biter (alle HTTP 200), mens modellturkanalen flyttet bare 192 KB – et forhold på ~27 800×. Selv med ledeteksten «svar OK, ikke les noen filer», lastet verktøyet opp hele repoet som en git bundle; kloning av den fangede bundelen gjenvant en fil (src/_probe/never_read_canary.txt) som agenten eksplisitt ble bedt om ikke å åpne, sammen med hele Git-commithistorikken .
Typer hemmeligheter og filer som ble sendt uten redigering
.env-filer som inneholder API-nøkler, databasepassord og andre legitimasjonsopplysninger ble sendt ordrett, uten maskering eller redigering via begge kanalene . I kontrollerte tester dukket en 48 KB fil med databaselegitimasjon og API-nøkler opp i klartekst i forespørselslegemet .
Hver sporede fil i repositoriet, pluss full Git-historikk (alle commits, brancher, tagger) ble bundlet og lastet opp . Dette betyr at fjernede hemmeligheter som ble commitet for måneder siden, men senere rotert, fortsatt kan eksistere i de opplastede dataene.
Opplastingsmekanismen ble identifisert som en førsteparts Rust-kasse (xai-data-collector) i binæren, med kildebaner som crates/codegen/xai-data-collector/src/gcs.rs og crates/codegen/xai-grok-shell/src/upload/.
På et ekte 12 GB depot med aldri-leste tilfeldige filer aksepterte lagringsendepunktet opplastinger uten noen størrelsesbasert avvisning; de eneste ikke-200-svarene var modellbrukskvotefeil (402/429), ikke lagringsfeil .
Personvernbryterens svikt
Forskeren testet personvernbryteren «Improve the model» og fant at den ikke stoppet opplastingene.
Etter å ha deaktivert bryteren og startet på nytt, returnerte serverinnstillingsendepunktet fortsatt trace_upload_enabled: true.
Lagringskanalen fortsatte å akseptere oppdelte git-bundle-opplastinger med HTTP 200-svar .
Et disable_codebase_upload=true -konfigurasjonsalternativ finnes i harness-innstillingene, men forholdet til serverens oppførsel er udokumentert, og forskerens tester viste at serveren ikke respekterte klientinnstillingene .
Anbefalte tiltak for berørte utviklere
Den opprinnelige forskeren og påfølgende analysekilder anbefaler følgende :
Umiddelbare handlinger for team som har brukt Grok Build CLI på private repoer:
Roter alle legitimasjonsopplysninger som fantes i en .env-fil, konfigurasjonsfil eller Git-historikk innenfor repositorier brukt med Grok Build, da de kan ha blitt sendt og lagret i grok-code-session-traces GCS-bøtten .
Gjennomgå Git-historikk for hemmeligheter som kan ha eksistert i tidligere commits, siden CLI-en sendte hele commithistorikken .
Anta at data ble lagret, ikke bare sendt – serveren returnerte HTTP 200 på alle lagringsforespørsler, noe som bekrefter aksept .
Spør xAI om bøtten er slettet, hvilke tilgangskontroller som fantes, og om en databehandleravtale dekket den (ingen ble publisert på avsløringstidspunktet) .
Arkitektoniske tiltak for enhver kodeagent:
Kjør agenter i containere/VMs med bare oppgavekatalogen montert, ingen hjemmekatalog, ingen SSH-agent, ingen Docker-socket og ingen sky-legitimasjonskataloger eksponert .
Implementer egress-kontroll: tillat modellinferensendepunkter og autentiseringsverter, men nekt direkte generiske objektlagringsopplastinger. Varsle ved overføringer som overstiger 100 MB .
Bruk full vertspakkefangst, DNS-logging og nettverkstelemetri på endepunkter for å oppdage opplastinger av bakgrunnskoordinatorprosesser som forgrunnsbytelltellere ville gå glipp av .
Test minimums- og maksimumsledetekster under wire-fangst – tilfeller der agenten blir bedt om ikke å lese filer er kritiske for å oppdage eksfiltrasjon utover kontekstvinduet .
Kjør minst tre ledeteksttilfeller: (1) «svar OK, ikke les noen filer», (2) les én spesifikk fil, (3) inspiser prosjektspråket – sammenlign deretter byte per endepunkt .
What xAI's Grok Build CLI Actually Sends Home: A Wire-Level ...
Data-eksfiltrasjon som motsier «Lokal-Først»-markedsføringen
Forskeren identifiserte to vesentlig forskjellige datakanaler som forlot utviklerens maskin :
Modellturkanalen (POST /v1/responses): filer agenten åpnet ble serialisert inn i modellforespørsler. Dette er forventet oppførsel for en skybasert kodeagent.
Lagringskanalen (POST /v1/storage): hele repositoriet ble uavhengig pakket som en git bundle og lastet opp i ~75 MB biter til en Google Cloud Storage-bøtte kalt grok-code-session-traces.
Skalaforskjellen beviste at opplastingen ikke var drevet av hva agenten leste. På et 12 GB testrepo flyttet lagringskanalen 5,10 GiB fordelt på 73 biter (alle HTTP 200), mens modellturkanalen flyttet bare 192 KB – et forhold på ~27 800×. Selv med ledeteksten «svar OK, ikke les noen filer», lastet verktøyet opp hele repoet som en git bundle; kloning av den fangede bundelen gjenvant en fil (src/_probe/never_read_canary.txt) som agenten eksplisitt ble bedt om ikke å åpne, sammen med hele Git-commithistorikken .
Typer hemmeligheter og filer som ble sendt uten redigering
.env-filer som inneholder API-nøkler, databasepassord og andre legitimasjonsopplysninger ble sendt ordrett, uten maskering eller redigering via begge kanalene . I kontrollerte tester dukket en 48 KB fil med databaselegitimasjon og API-nøkler opp i klartekst i forespørselslegemet .
Hver sporede fil i repositoriet, pluss full Git-historikk (alle commits, brancher, tagger) ble bundlet og lastet opp . Dette betyr at fjernede hemmeligheter som ble commitet for måneder siden, men senere rotert, fortsatt kan eksistere i de opplastede dataene.
Opplastingsmekanismen ble identifisert som en førsteparts Rust-kasse (xai-data-collector) i binæren, med kildebaner som crates/codegen/xai-data-collector/src/gcs.rs og crates/codegen/xai-grok-shell/src/upload/.
På et ekte 12 GB depot med aldri-leste tilfeldige filer aksepterte lagringsendepunktet opplastinger uten noen størrelsesbasert avvisning; de eneste ikke-200-svarene var modellbrukskvotefeil (402/429), ikke lagringsfeil .
Personvernbryterens svikt
Forskeren testet personvernbryteren «Improve the model» og fant at den ikke stoppet opplastingene.
Etter å ha deaktivert bryteren og startet på nytt, returnerte serverinnstillingsendepunktet fortsatt trace_upload_enabled: true.
Lagringskanalen fortsatte å akseptere oppdelte git-bundle-opplastinger med HTTP 200-svar .
Et disable_codebase_upload=true -konfigurasjonsalternativ finnes i harness-innstillingene, men forholdet til serverens oppførsel er udokumentert, og forskerens tester viste at serveren ikke respekterte klientinnstillingene .
Anbefalte tiltak for berørte utviklere
Den opprinnelige forskeren og påfølgende analysekilder anbefaler følgende :
Umiddelbare handlinger for team som har brukt Grok Build CLI på private repoer:
Roter alle legitimasjonsopplysninger som fantes i en .env-fil, konfigurasjonsfil eller Git-historikk innenfor repositorier brukt med Grok Build, da de kan ha blitt sendt og lagret i grok-code-session-traces GCS-bøtten .
Gjennomgå Git-historikk for hemmeligheter som kan ha eksistert i tidligere commits, siden CLI-en sendte hele commithistorikken .
Anta at data ble lagret, ikke bare sendt – serveren returnerte HTTP 200 på alle lagringsforespørsler, noe som bekrefter aksept .
Spør xAI om bøtten er slettet, hvilke tilgangskontroller som fantes, og om en databehandleravtale dekket den (ingen ble publisert på avsløringstidspunktet) .
Arkitektoniske tiltak for enhver kodeagent:
Kjør agenter i containere/VMs med bare oppgavekatalogen montert, ingen hjemmekatalog, ingen SSH-agent, ingen Docker-socket og ingen sky-legitimasjonskataloger eksponert .
Implementer egress-kontroll: tillat modellinferensendepunkter og autentiseringsverter, men nekt direkte generiske objektlagringsopplastinger. Varsle ved overføringer som overstiger 100 MB .
Bruk full vertspakkefangst, DNS-logging og nettverkstelemetri på endepunkter for å oppdage opplastinger av bakgrunnskoordinatorprosesser som forgrunnsbytelltellere ville gå glipp av .
Test minimums- og maksimumsledetekster under wire-fangst – tilfeller der agenten blir bedt om ikke å lese filer er kritiske for å oppdage eksfiltrasjon utover kontekstvinduet .
Kjør minst tre ledeteksttilfeller: (1) «svar OK, ikke les noen filer», (2) les én spesifikk fil, (3) inspiser prosjektspråket – sammenlign deretter byte per endepunkt .
What xAI's Grok Build CLI Actually Sends Home: A Wire-Level ...