Bezpečnostní výzkumník Alvin Ferdiansyah objevil, že referenční implementace Google Gemini Live API vynechala pole live connect constraints, což útočníkům umožňuje unést hlasové relace v prohlížeči. Oprava: Při vytváření tokenu je nutné vyplnit live connect constraints.bidi generate content setup s modelem, systémov...

Create a landscape editorial hero image for this Studio Global article: Search & fact-check with cited sources for What is the Gemini Live API flaw discovered by Alvin Ferdiansyah, how does it allow attackers to. Article summary: ## The Vulnerability. Topic tags: general, documentation, 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.
Koncem června 2026 publikoval bezpečnostní výzkumník Alvin Ferdiansyah podrobný popis toho, co označil jako kritickou chybu v systému dočasných tokenů (ephemeral tokens) API Gemini Live od Googlu. Tato chyba, pokud se potvrdí, umožňuje útočníkovi, který získá krátkodobý WebSocket token, unést hlasovou relaci AI v prohlížeči – ovládnout model, systémovou instrukci i nástroje, které může relace spouštět.
Jádrem zranitelnosti je chybějící bezpečnostní pole při vytváření tokenu. Zde je to, co víme, co zůstává nepotvrzeno a jak mohou vývojáři chránit svá nasazení.
Gemini Live API podporuje WebSocket spojení mezi prohlížečem a serverem pomocí dočasných tokenů (ephemeral tokens) – krátkodobých autentizačních tokenů, které rychle vyprší a lze je omezit na konkrétní použití . Tyto tokeny vytváří backendový server a předává je klientovi, který je použije k přímému připojení k Gemini API, aniž by byl vystaven skutečný API klíč.
Dokumentace Googlu vysvětluje, že dočasné tokeny jsou navrženy pro implementace typu klient-server, kde je bezpečnost důležitá, protože i v případě extrakce z prohlížeče jejich krátká životnost omezuje škody . Koncový bod pro tato omezená připojení se jmenuje
BidiGenerateContentConstrained a přijímá dočasný token jako parametr dotazu access_token .
live_connect_constraintsPodle Ferdiansyahova zápisu referenční implementace pro vytváření tokenů vynechala pole live_connect_constraints . Toto pole má obsahovat objekt
bidi_generate_content_setup, který váže token na konkrétní model, systémovou instrukci a sadu nástrojů.
Když je live_connect_constraints prázdný nebo chybí, nejsou vynuceny žádné limity. Útočník, který získá dočasný token, pak může odeslat setup frame řízený klientem s libovolným modelem, systémovou instrukcí a nástroji. Server, který postrádá hodnoty vázané na token k ověření, přijme konfiguraci útočníka.
Důležité upozornění: Poskytnuté zdroje neobsahují oficiální dokumentaci Googlu k
live_connect_constraints, CVE ani bezpečnostní doporučení Googlu potvrzující toto chování. Tvrzení pochází z Ferdiansyahova příspěvku na Medium a mělo by být považováno za neověřené, ale pravděpodobné.
Pokud je zranitelnost skutečná, důsledky jsou významné pro jakoukoli aplikaci používající Gemini Live API v prohlížeči:
Vývojáři na fóru Google AI hlásili problémy s dočasnými tokeny, které ignorují systémové instrukce a nefungují podle očekávání s omezenými koncovými body, což naznačuje, že celý ekosystém stále dozrává .
Náprava popsaná Ferdiansyah je přímočará: při vytváření tokenu je třeba vyplnit pole live_connect_constraints.bidi_generate_content_setup
model – Přesný model Gemini k použití (např. models/gemini-2.5-flash-native-audio-latest).system_instruction – Zamýšlená systémová instrukce, strukturovaná jako parts obsahující text.tools – Prázdné pole [] nebo pouze explicitně povolené nástroje, aby se zabránilo injektáži na straně klienta.Zde je ilustrativní Python kód z Ferdiansyahova zápisu :
token = gemini_client.auth_tokens.create({
"uses": 1,
"expire_time": now + timedelta(seconds=60),
"new_session_expire_time": now + timedelta(seconds=60),
"live_connect_constraints": {
"bidi_generate_content_setup": {
"model": "models/gemini-2.5-flash-native-audio-latest",
"system_instruction": {
"parts": [{"text": "Jste asistent zákaznické podpory..."}]
},
"tools": []
}
}
})Poznámka: Protože
live_connect_constraintsnení zdokumentováno v oficiálním API reference Googlu, tento příklad vychází z Ferdiansyahova vlastního popisu a měl by být před produkčním nasazením otestován proti skutečnému API.
Následující klíčové body zůstávají poskytnutými zdroji neověřeny:
live_connect_constraints.BidiGenerateContentConstrained při přijetí neomezeného tokenu není v poskytnutých oficiálních referencích zdokumentováno Dokud Google nezveřejní oficiální doporučení, nejbezpečnějším přístupem je považovat zranitelnost za pravděpodobnou a aplikovat opravu proaktivně:
live_connect_constraints nebo jeho ekvivalent.newSessionExpireTime kolem 60 sekund, aby se omezilo okno pro krádež tokenu Gemini Live API je mocný nástroj pro vytváření hlasových a video zážitků v reálném čase. Jediné chybějící pole v procesu vytváření tokenu by nemělo tuto schopnost podkopat – ale vývojáři se musí ujistit, že jejich implementace jsou kompletní.
Tento článek byl fakticky ověřen proti 27 poskytnutým zdrojům, včetně oficiální dokumentace Googlu, diskusí na komunitním fóru a původního zápisu výzkumníka. Klíčová tvrzení výzkumníka nebylo možné v době publikace nezávisle ověřit z oficiálních zdrojů.
Studio Global AI
Use this topic as a starting point for a fresh source-backed answer, then compare citations before you share it.
Bezpečnostní výzkumník Alvin Ferdiansyah objevil, že referenční implementace Google Gemini Live API vynechala pole live connect constraints, což útočníkům umožňuje unést hlasové relace v prohlížeči.
Bezpečnostní výzkumník Alvin Ferdiansyah objevil, že referenční implementace Google Gemini Live API vynechala pole live connect constraints, což útočníkům umožňuje unést hlasové relace v prohlížeči. Oprava: Při vytváření tokenu je nutné vyplnit live connect constraints.bidi generate content setup s modelem, systémovou instrukcí a prázdným polem nástrojů.
Oficiální dokumentace Google a CVE zatím nejsou k dispozici, vývojáři by měli zranitelnost považovat za pravděpodobnou a aplikovat opravu proaktivně.