Adresy pocztowe klientów Framework wyciekły nie ze sklepu producenta ani z bazy zamówień. Wyciekły z programu, w którym firma ogląda wykresy sprzedaży. Metabase to narzędzie analityki biznesowej, popularne tam, gdzie ktoś chce widzieć dane bez pisania zapytań do bazy. Napastnik wykorzystał w nim nieznaną wcześniej lukę i sięgnął po to, co akurat w środku leżało. U producenta laptopów leżały imiona i nazwiska, adresy e-mail oraz adresy dostawy. Danych płatniczych nie było, bo płatności obsługuje zewnętrzny operator. Pytanie, które klienci zadają w wątku na forum producenta, waży jednak więcej niż sam wyciek danych. Po co komplet danych osobowych w ogóle trafił do narzędzia od wykresów.
Wyciek danych zaczął się u dostawcy, nie w sklepie
Zaatakowany został Metabase, a nie systemy Framework. To rozróżnienie nie jest wykrętem producenta, tylko opisem tego, gdzie leży problem. Firma kupiła gotowe narzędzie, wpuściła do niego swoje dane i odziedziczyła jego dziury.
Sam Metabase opisał sprawę na swoim blogu. Napastnik wykorzystał wcześniej nieznaną lukę, czyli podatność dnia zerowego, w wersjach 1.58 i nowszych. Pozwalała ona wstrzykiwać dowolne zapytania SQL do bazy, na której stoi sama aplikacja. Producent zablokował końcówki użyte w ataku, znalazł błąd i wydał poprawkę. Instalacje w chmurze Metabase zostały zaktualizowane automatycznie, a użytkownicy z własnymi serwerami muszą zrobić to sami.
Skutki opisane przez producenta wykraczają poza jedną tabelę. Po przejęciu aplikacji napastnik mógł zmienić jej konfigurację i wykraść zapisane poświadczenia do podłączonych baz danych. Mógł też odczytać wszystko, co przez te połączenia widać, i wyeksportować to na zewnątrz. Narzędzie analityczne jest w firmie punktem, w którym schodzą się klucze do wielu systemów naraz.
Co wyciekło i czego w tych danych nie było
Framework podaje trzy kategorie: imiona i nazwiska, adresy e-mail, adresy pocztowe. W komunikacie do klientów firma pisze wprost, że wyciek nie objął danych rozliczeniowych ani płatniczych, bo płatnościami zajmuje się osobny operator.
Liczby poszkodowanych w oświadczeniu nie ma i nie będziemy jej zgadywać. Nie ma też numeru w publicznym katalogu podatności; Metabase opisuje błąd pod identyfikatorem nadanym przez GitHuba, a nie przez klasyczny rejestr CVE. Kto szuka twardej skali tego zdarzenia, na razie jej nie znajdzie.
Zestaw “imię, nazwisko, adres” brzmi niegroźnie obok wycieków z numerami kart. W wątku na forum producenta pada jednak trzeźwa uwaga: to są adresy ludzi, o których wiadomo, że kupili drogi sprzęt. Uczestnicy dyskusji obawiają się, że takie połączenie ułatwia ukierunkowaną kradzież albo wiadomość podszywającą się pod producenta. To ryzyko wskazywane przez społeczność, a nie potwierdzony skutek incydentu. Zostaje przy tym prosty fakt: adresu nie zmienisz jednym telefonem do banku.
Trzy dni u dostawcy, sześć godzin u producenta
Kalendarium tej sprawy warto przeczytać dwa razy. Metabase wykrył incydent i powiadomił partnerów po trzech dniach. Framework potwierdził u siebie skutki i napisał do klientów w sześć godzin od otrzymania tej informacji.
Te dwie liczby mierzą różne rzeczy, więc nie są wyścigiem. Pokazują za to, gdzie w łańcuchu powstaje opóźnienie, na które klient nie ma żadnego wpływu. Przez trzy dni dane były już poza firmą, a firma nie wiedziała, że ma o czym informować. Szybka reakcja producenta zaczyna się w chwili, w której dostawca zdecyduje się odezwać.
Dla polskiej firmy ta arytmetyka ma wymiar całkiem praktyczny. Zegar na zgłoszenie naruszenia do organu nadzorczego liczy się od stwierdzenia naruszenia, a nie od włamania u dostawcy. Jeśli w umowie z dostawcą nie ma terminu na powiadomienie o incydencie, to znaczy, że twój termin zależy od cudzego kalendarza.
Pierwsza Misja AI · Kodożercy
AI zmienia rynek pracy. Zacznij rozumieć o co chodzi.
Kurs Pierwsza Misja AI to najkrótszy kurs po którym naprawdę rozumiesz AI – i możesz to pokazać certyfikatem. Sci-fi fabuła i gamifikacja sprawiają że nie nudzisz się ani minuty.
Dołącz do kursantów →

Po co dane klientów w narzędziu do wykresów
Na forum Framework wraca jedno pytanie: dlaczego adresy klientów w ogóle znalazły się w Metabase. Uczestnicy wątku pytają też, czy firma nie mogłaby przekazywać partnerom wyłącznie tego, co jest naprawdę niezbędne. To głos klientów, nie ustalenie audytu, i tak trzeba go czytać. Źródła nie wyjaśniają, dlaczego pełny zakres danych trafił do tego narzędzia. Jako pytanie jest to jednak celne.
Analityka rzadko potrzebuje danych osobowych. Do wykresu sprzedaży według regionów wystarczy kod pocztowy i kwota. Do policzenia powracających klientów wystarczy identyfikator, a nie nazwisko z adresem. W wielu firmach pełne rekordy trafiają do takich narzędzi nie z decyzji, tylko z wygody: ktoś podpina całą tabelę, bo tak jest szybciej, i nikt tego potem nie zawęża.
W sierpniu opisujemy to już czwarty raz. Za każdym razem ktoś wszedł do firmy nie przez nią samą, a przez coś, co miała podpięte. Były zainfekowane paczki npm, była luka w narzędziu do zdalnego zarządzania N-able i był skrypt reklamowy Adform podmieniający adresy portfeli. W żadnym z tych przypadków zaatakowana firma nie zrobiła u siebie błędu.
Co zrobić, jeśli twoja firma używa Metabase
Producent podał listę czynności i jest ona konkretna. Zaktualizuj instalację, jeśli stoi na twoim serwerze. Unieważnij aktywne sesje. Przejrzyj klucze do interfejsu programistycznego oraz konta administratorów. Wymień poświadczenia do wszystkich podłączonych baz danych, bo to one były łupem.
Warto też zajrzeć do logów. Metabase podaje ślad charakterystyczny dla tego ataku: żądanie do końcówki resetowania hasła zakończone błędem, a zaraz po nim udane pobranie danych bieżącego użytkownika. Jeśli taki wzorzec występuje w logach, sprawa wymaga osobnego sprawdzenia.
Poza samą łatką zostaje pytanie do odhaczenia w każdej firmie z podpiętym systemem analitycznym. Kto ma do niego dostęp, jakie tabele są w nim widoczne i czy ktokolwiek przeglądał to w tym roku. Jeśli odpowiedź brzmi “wszystko, bo tak było prościej”, to warto ją zmienić zanim zrobi to za ciebie czyjaś luka.
Podsumowanie
Dane osobowe klientów producenta laptopów wyciekły z systemu analityki biznesowej, do którego wcześniej zostały podpięte. Wyciekły imiona i nazwiska, adresy e-mail i adresy pocztowe; danych płatniczych w tym zbiorze nie było. Źródła nie tłumaczą, dlaczego trafił tam pełny zakres danych, i to właśnie pytanie wraca w wątku klientów. Dostawca narzędzia powiadomił partnerów po trzech dniach, producent swoich klientów po sześciu godzinach, a klient końcowy nie miał wpływu na żaden z tych zegarów. Praktyczna lekcja nie dotyczy jednak laptopów. Dotyczy każdej firmy, która podpięła bazę zamówień pod narzędzie do raportów i nie zawęziła tego, co przez nie widać. Zakres danych w takim systemie jest decyzją, którą ktoś kiedyś podjął w pośpiechu, a płaci się za nią dopiero wtedy, gdy dziura znajdzie się po stronie dostawcy.
Newsletter · DevstockAcademy & Kodożercy
Bądź na bieżąco ze światem IT, AI i automatyzacji
Co wtorek: newsy z branży, praktyczne tipy i narzędzia które warto znać. Zero spamu.



