Program nagród za podatności w ochronie zdrowia: przed naruszeniem
Incydent Medyc pokazuje, dlaczego dostawcy oprogramowania medycznego potrzebują bezpiecznego kanału zgłoszeń i budżetu na nagrody, zanim ktoś wykorzysta lukę.
Ernest Bursa
Program nagród za podatności w oprogramowaniu medycznym pozwala uprawnionym badaczom znajdować i zgłaszać podatności, zanim wykorzystają je przestępcy. Zadziała tylko wtedy, gdy dostawca wcześniej opublikuje bezpieczny zakres testów, wyznaczy osoby do oceny zgłoszeń oraz zapewni środki na poprawki i nagrody. Opisana w polskim oprogramowaniu Medyc podatność na SQL injection pokazuje, dlaczego warto zająć się tym już teraz. Nie wiadomo, czy program nagród zapobiegłby temu konkretnemu naruszeniu.
Jedna z polskich placówek poinformowała pacjentów o dwóch osobnych naruszeniach u dostawców oprogramowania, z którego korzystała: MyDr oraz Medyc firmy Qbusoft. Jej komunikat o MyDr i komunikat o Medyc opisują te zdarzenia oddzielnie. Przychodnia może więc mierzyć się jednocześnie z zagrożeniami po stronie kilku dostawców, choć nic nie wskazuje na wspólną techniczną przyczynę włamań.
Co wiemy o incydencie dotyczącym Medyc?
Placówka powołuje się w zawiadomieniu na ustalenia Qbusoftu i ekspertów informatyki śledczej. Według tego opisu napastnik wykorzystał podatność SQL injection w interfejsie Medyc 22–23 sierpnia 2026 roku i przesłał zaszyfrowane archiwum bazy danych poza środowisko Qbusoftu. Włamanie wykryto w nocy z 8 na 9 września. Placówka podaje, że Qbusoft naprawił błąd w dniu wykrycia ataku, ograniczył uprawnienia do bazy danych, wymienił techniczne dane uwierzytelniające oraz zawiadomił policję i polski organ ochrony danych osobowych.
W przypadku pacjentów dziennego oddziału terapii uzależnień placówka stwierdza, że pobrane dane na pewno obejmowały imiona i nazwiska, numery PESEL, adresy, numery telefonów i adresy e-mail. Według zawiadomienia imiona i nazwiska oraz numery PESEL były przechowywane w postaci zaszyfrowanej, ale Qbusoft zalecił placówce przyjąć, że napastnicy mogli bez trudu odszyfrować te dwa pola i uzyskać je w postaci jawnej. Skrypty atakowały także tabele z danymi medycznymi, dlatego placówka uważa za wysoce prawdopodobne, że pobrano również epikryzy. Zawiadomienie nie potwierdza, że epikryzy skopiowano.
Urząd Ochrony Danych Osobowych (UODO) podał 25 września, że według doniesień medialnych incydent mógł dotyczyć nawet pięciu milionów osób, i zapowiedział kontrolę Qbusoftu. To nie jest potwierdzona liczba osób dotkniętych naruszeniem. Urząd przytoczył też wypowiedź ministra cyfryzacji z 24 września: do tego czasu Qbusoft nie zgłosił sprawy do CERT Polska ani do CSIRT właściwego dla ochrony zdrowia. Placówka pisze o zawiadomieniu policji i UODO, czyli innych odbiorców. Obie informacje mogą więc być prawdziwe.
Zaufana Trzecia Strona łączy incydent Medyc ze sprawcą wcześniejszego ataku na MyDr. W źródłach publicznych dostępnych na potrzeby tego artykułu organy państwowe nie potwierdziły takiego przypisania. Najważniejszy wniosek nie zależy od tożsamości sprawcy: według dostępnych informacji podatność SQL injection w interfejsie Medyc umożliwiła wyniesienie danych ze środowiska dostawcy.
Dlaczego przygotować kanał zgłoszeń i nagrody przed pierwszym zgłoszeniem?
SQL injection to rodzaj błędu, który badacz z zewnątrz może znaleźć bez uprzywilejowanego dostępu. Program wskazuje mu, które systemy wolno testować, jak potwierdzić błąd bez otwierania prawdziwej dokumentacji medycznej, gdzie przesłać zgłoszenie i kiedy spodziewać się odpowiedzi. Wytyczne NIST dotyczące ujawniania podatności zalecają formalny proces przyjmowania, oceny i obsługi zgłoszeń oraz komunikacji z badaczami. Nie obiecują, że taki proces wykryje każdy błąd.
Zacznij od programu ujawniania podatności (VDP): opublikuj kontakt, zakres i zasady testów, warunki safe harbor, zapewnij obsługę zgłoszeń oraz drogę od potwierdzenia błędu do poprawki. Następnie uruchom płatny program nagród za podatności, gdy zespół zdoła obsłużyć dodatkowe zgłoszenia i ma zatwierdzony budżet. Nagroda zachęca badaczy do poświęcenia czasu twojemu produktowi. Dopiero sprawne przyjmowanie zgłoszeń i naprawianie błędów pozwala z tej pracy skorzystać. Jeśli możesz dziś zapewnić jedno i drugie, opublikuj oba programy. Kryzys to zły moment na pisanie pierwszych zasad testów.
Żadne publiczne źródło o Medyc nie wskazuje, by wcześniej badacz działający w dobrej wierze znalazł tę podatność, próbował ją zgłosić albo znalazłby ją dzięki programowi nagród. Taki program nie zastępuje też bezpiecznych zapytań do bazy danych, przeglądu kodu, testów penetracyjnych, logowania zdarzeń, zasady najmniejszych uprawnień w bazie ani reagowania na incydenty. Daje badaczom możliwość zgłoszenia błędu, gdy jest jeszcze czas na jego naprawę.
Jak pozwolić badaczom testować system bez narażania pacjentów?
Program dla oprogramowania medycznego potrzebuje jasnych granic. Polityka zgłaszania podatności amerykańskiego Departamentu Zdrowia i Opieki Społecznej daje użyteczny przykład: testuj wyłącznie wymienione systemy, wykorzystuj podatność tylko w stopniu niezbędnym do jej potwierdzenia, przerwij test po napotkaniu danych wrażliwych i nigdy nie wynoś dokumentacji. Dostawca może dostosować takie zasady do własnej architektury i porady prawnej. Nie jest to zgoda na testowanie cudzych systemów.
| Co opublikować przed startem | Co musi wiedzieć badacz |
|---|---|
| Własne zasoby i środowiska | Które domeny produktu, API, aplikacje mobilne i konta testowe obejmuje program? Które instalacje zarządzane przez placówki oraz systemy innych firm są wyłączone? |
| Dowód bez narażania pacjentów | Czy badacz może użyć fikcyjnych pacjentów i środowisk testowych dostawcy? Jaki minimalny dowód wystarczy po zasłonięciu lub usunięciu danych wrażliwych? Test trzeba przerwać przed odczytem lub eksportem prawdziwej dokumentacji. |
| Zakazane działania | Bez testów dostępności, masowego pobierania danych, socjotechniki, utrzymywania dostępu ani zmian w przebiegu leczenia. Podaj kontakt do wyjaśniania wątpliwości co do zakresu. |
| Zobowiązania dotyczące odpowiedzi | Kto potwierdza odbiór, kto weryfikuje błąd, kto odpowiada za poprawkę i kiedy badacz dostanie aktualizację? |
| Nagrody i ujawnienie informacji | Za które potwierdzone błędy przysługuje nagroda, jak ustala się kwotę, jak traktuje się duplikaty i jak uzgadnia się publiczne ujawnienie? |
To już działa w praktyce. Publiczny program nagród Doctolib dotyczy ochrony zdrowia i jasno opisuje zakres, nagrody oraz warunki testowania. Mniejszy dostawca nie musi kopiować wysokości nagród ani skali programu. Może za to równie wyraźnie wskazać, gdzie badacze mogą pracować i jak uniknąć wpływu na opiekę nad pacjentami.
Przed zaproszeniem badaczy z zewnątrz przeprowadź próbę wewnętrzną: wyślij fikcyjne zgłoszenie, sprawdź jego odbiór i przypisanie, zweryfikuj czas odpowiedzi, wprowadź poprawkę i wyślij badaczowi wiadomość o zamknięciu sprawy. Usuń wszelkie problemy z przekazywaniem zgłoszeń, zanim zaprosisz więcej badaczy.
Którzy dostawcy oprogramowania medycznego powinni rozważyć to już teraz?
Dostawca przechowujący dokumentację wielu niezależnych placówek odpowiada przed każdą z nich. Jeden błąd w jego produkcie może zmusić każdą placówkę do oceny, czy ujawniono dane jej pacjentów. Dostawcy systemów elektronicznej dokumentacji medycznej, oprogramowania do zarządzania placówkami i rezerwacji wizyt powinni opublikować kanał zgłaszania podatności, zanim będzie potrzebny. Produkty hostowane przez dostawcę i instalacje zarządzane przez placówki mogą wymagać odmiennie określonego zakresu testów. Program musi wymieniać wyłącznie zasoby należące do dostawcy lub te, do których testowania ma on upoważnienie.
Osoba odpowiedzialna za rozwój lub bezpieczeństwo produktu powinna zapytać: Czy badacz znajdzie dziś właściwy kontakt, zgłosi błąd bez narażania pacjentów i dotrze do kogoś, kto może go naprawić? Jeśli odpowiedź nie jest pewna, określ zakres systemów i wyznacz odpowiedzialną osobę. Placówka kupująca oprogramowanie może zadać to samo pytanie podczas oceny dostawcy. Wcześniejszy artykuł o MyDr omawia ograniczenia kanałów zgłoszeń przy różnych rodzajach naruszeń. Przypadek Medyc pokazuje, dlaczego trzeba ustalić, które interfejsy produktu badacze z zewnątrz mogą bezpiecznie testować. Zasady programu powinny też pozwalać zgłaszać znalezione w nich podatności.
Jak Kit pomaga prowadzić program zgłaszania podatności w ochronie zdrowia?
Kit daje zespołowi bezpieczeństwa publiczny portal do zgłoszeń i konfiguracji programu, generowany plik security.txt, opublikowany zakres testów, przypisywanie zgłoszeń i triaż, komunikację z badaczami oraz monitorowanie SLA. Zespół, który zdecyduje się płacić nagrody, może ustalić ich przedziały, omówić propozycje, zapisać decyzję o przyznaniu nagrody i śledzić przekazanie sprawy do wypłaty. Zacznij od określenia własnych systemów i zasad testów chroniących pacjentów. Potem wyślij fikcyjne zgłoszenie i sprawdź całą drogę od wysłania do zamknięcia.
Kit nie skanuje systemów w poszukiwaniu SQL injection, nie zabezpiecza zapytań do baz danych i nie potwierdza, że u dostawcy nie doszło do naruszenia. To zadania zespołów inżynieryjnych i reagowania na incydenty. Kit pomaga badaczowi z zewnątrz dotrzeć do zespołu odpowiedzialnego za poprawkę. Zachowuje przy tym informację, kto prowadzi zgłoszenie i co dzieje się z nim dalej. Szczegóły opisuje poradnik konfiguracji programu ujawniania podatności.
Powiązane artykuły
Wypróbuj Kit przez 30 dni.
Rekrutacja, zgłoszenia podatności i szkolenia w jednym koncie, dla zespołów, w których nikt nie robi tego na pełny etat. Kartę podajesz na starcie; zrezygnuj przed końcem okresu próbnego, a nic nie zapłacisz.
Zacznij za darmo