„I saw my Open AI, Anthropic, and Google AI spend alerts all fire off before going to bed” – tak jeden z programistów opisał na Reddicie i X swój wieczór. Alerty wydatków od trzech dostawców naraz, tuż przed snem. Rano okazało się, że nie był jedyny.
OpenCode to otwartoźródłowy agent do kodowania działający w terminalu, a OpenCode Console to jego platforma online, w której można zapisać klucze do zewnętrznych dostawców modeli. W sobotę 17 października firma ogłosiła, że w nocy napastnicy weszli do starszego systemu i dotyczy to 1,4% użytkowników Console. Chodzi o osoby, które miały tam podpięte klucze do dostawców zewnętrznych. Według TechCrunch włamanie przyszło tej samej nocy, w której OpenCode udostępnił za darmo model GLM-5.3-Flash.
Skala strat różni się między kontami. Część osób zobaczyła obciążenia na kilkaset dolarów, kilka sum przekroczyło tysiąc. OpenCode zapowiedział zwroty za nieautoryzowane obciążenia.
Kogo dotyczy wyciek z OpenCode?
Według firmy tylko tych, którzy dostali od niej maila. Otwartoźródłowa aplikacja i CLI nie są dotknięte, bo klucze trzymane lokalnie nigdy nie trafiają na serwery OpenCode. Współzałożyciel Dax Raad ujął to krótko: te klucze „never come to us”. Problem dotyczy więc wyłącznie kluczy zapisanych w chmurowej Console.
Co zrobić, jeśli używasz OpenCode Console
- Unieważnij klucze i wygeneruj nowe bezpośrednio u każdego dostawcy, którego klucz był zapisany w Console. Tak radzi sam OpenCode.
- Przejrzyj zużycie i rachunki u OpenAI, Anthropic i Google pod kątem ruchu, którego nie było.
- Sprawdź skrzynkę. Brak maila od OpenCode oznacza według firmy, że konto nie było w grupie 1,4%.
- Ustaw limity wydatków u dostawców, jeśli ich jeszcze nie ma. Ten punkt to już rada od nas: alert przy wysokim limicie nie zatrzyma nocnego rachunku.
Dostawcy zareagowali po swojemu. Anthropic i Google zablokowały klucze, które uznały za ujawnione. OpenAI pomaga przywrócić dostęp i zwraca klientom API kredyty zużyte w ataku.
Atak destylacyjny czy zwykłe włamanie?
OpenCode nazwał zdarzenie na X „large-scale distillation attack”, czyli masowym atakiem destylacyjnym: cudze klucze miałyby posłużyć do wygenerowania ogromnej liczby odpowiedzi, na których trenuje się własny model. TechCrunch zwraca uwagę, że wyciekłe klucze przydają się do tego zwłaszcza tam, gdzie dostęp do amerykańskich modeli jest ograniczony. Część sceptyków odpowiada, że to po prostu włamanie, a destylacji nikt nie udowodnił.
Raad opisał też samą obronę. Ataki szły bez przerwy przez 48 godzin, więc zespół trzymał całą dobę włączone obronne agenty AI. Modele pomagały, dopóki analizowany złośliwy kod nie uruchomił ich filtrów bezpieczeństwa i nie zaczęły odmawiać pracy, co Raad nazwał „a bit frustrating”. Później OpenCode dostał się do programu Daybreak Blue od OpenAI, który daje sprawdzonym zespołom modele rzadziej odmawiające pracy obronnej.
Otwartych pytań jest więcej niż odpowiedzi. Nie wiadomo, jak napastnicy weszli do starego systemu, jak przechowywano klucze, jak duże było nadużycie i czy incydent jest już opanowany. Sama firma mówi, że sprawa trwa. Z całej historii najbardziej zostaje w głowie prosty fakt: klucz zapisany w cudzej usłudze jest tak bezpieczny jak ta usługa. Dlatego środowiska, w których agent w ogóle nie widzi klucza, takie jak sandboxy Dockera z proxy wstrzykującym dane logowania, przestają wyglądać na przesadę. Jak to ustawić u siebie, opisujemy w poradniku o Claude Code w kontenerze.



