Globalny chaos wywołany przez błąd CrowdStrike
"Niebieski Ekran Śmierci", czyli pokłosie błędu w oprogramowaniu CrowdStrike, wedle szacunków pojawił się na około 8,5 milionach urządzeń na całym świecie, a problemy dotknęły blisko 60 proc. firm z listy Fortune 500. Czołowe banki w USA i część europejskich odnotowało przerwy w działaniu systemów transakcyjnych.
Szpitale w Niemczech musiały odwołać planowane operacje. W Polsce wystąpiło czasowe zakłócenie funkcjonowania terminala kontenerowego w Gdańsku, a na lotniskach pojawiły się problemy z odprawą pasażerów. Szacuje się, że straty poniesione jedynie przez 500 największych amerykańskich firm, wyniosły blisko 5,4 miliarda dolarów.
Tak duża skala była związana z popularnością tych rozwiązań, w szczególności w USA oraz jednoczesną, automatyczną aktualizacją CrowdStrike i systemu MS Windows.
Nim producent dostarczył rozwiązanie problemu, pojawiły się pierwsze metody obejścia problemu. Dla korporacji, na masową skalę korzystających z rozwiązań w których wystąpił błąd, największym wyzwaniem był bezpośredni dostęp do uszkodzonych maszyn.
– Naprawa wymagała ręcznej interwencji, w tym uruchamiania komputerów w trybie awaryjnym i usuwania określonych plików systemowych. Helpdesk nie był w stanie zareagować na problem zdalnie, ponieważ do zawieszonego komputera trzeba było podejść, a w większości międzynarodowych korporacji obsługa IT funkcjonuje w formie outsourcingu prowadzonego często z innego kraju. Na osobistą wizytę serwisanta trzeba poczekać, dlatego efektem awarii był długotrwały brak dostępu do usług, co powodowało gigantyczne straty. Cały proces był po prostu czasochłonny, co dodatkowo komplikowało sytuację w firmach korzystających z szyfrowania dysków BitLocker – powiedział Aleksander Kostuch, inżynier Stormshield, europejskiego wytwórcy rozwiązań bezpieczeństwa IT.
Grupa testowa to jedna z najlepszych praktyk jaką możemy zastosować, by ograniczyć skutki ewentualnych błędów
– Musimy być przygotowani na szybkie i skuteczne działania zarówno w obliczu awarii technologicznych i rzeczywistych ataków, aby zapobiec efektowi paniki oraz minimalizować szkody. Jednak pamiętajmy, że ogólna reakcja jest sumą indywidualnych działań. Tak więc prawidłowe procedury wdrożone w pojedynczej firmie i instytucji mają znaczenie dla globalnego bezpieczeństwa – dodał ekspert Stormshield.
To o tyle istotne, że w minionych latach miały miejsce głośne ataki na aktualizacje istotnych z perspektywy funkcjonowania gospodarki systemów, jak NotPetya czy SolarWinds. Dlatego warto tworzyć środowisko testowe odizolowane od środowiska produkcyjnego i w nim sprawdzać aktualizacje, aby ewentualne problemy nie wpływały na pozostałą infrastrukturę.
– Wdrażamy aktualizację w zamkniętym środowisku i jeśli po zdefiniowanym zgodnie z praktykami czasie pojawi się niebieski ekran lub inny problem systemowy, można wstrzymać masową aktualizację, a błąd nie sparaliżuje pracy całej organizacji – wyjaśnił Aleksander Kostuch.
Pierwszymi odbiorcami aktualizacji powinny być urządzenia reprezentatywne dla różnych typów sprzętu i konfiguracji, aby jak najlepiej odwzorować środowisko produkcyjne. Zarówno starsze, jak i nowsze urządzenia, co pozwala zidentyfikować potencjalne problemy w szerszym zakresie. W środowisku testowym warto symulować rzeczywiste obciążenia i typowe scenariusze użytkowania, aby sprawdzić, jak aktualizacja wpływa na wydajność i stabilność systemu.
8 zasad testowania aktualizacji
- Ustal grupę urządzeń, które będą pierwszymi odbiorcami aktualizacji, wybierając urządzenia reprezentatywne dla różnych typów sprzętu i konfiguracji, aby jak najlepiej odwzorować środowisko produkcyjne. Zasadnym jest, aby w grupie pilotażowej znalazły się zarówno starsze, jak i nowsze urządzenia, co pozwala zidentyfikować potencjalne problemy w szerszym zakresie.
- W środowisku testowym warto symulować rzeczywiste obciążenia i typowe scenariusze użytkowania, aby sprawdzić, jak aktualizacja wpływa na wydajność i stabilność systemu. Symulacje mogą obejmować różne formy aktywności, jak praca z dużymi plikami, intensywna komunikacja sieciowa, a także testy funkcjonalności specyficzne dla danej organizacji.
- Zbieraj szczegółowe logi, które pozwolą na szybką identyfikację i diagnozę problemów, automatyczne raportowanie incydentów czy inne błędy krytyczne. Pomoże to w szybkim reagowaniu.
- Definiuj procedury i narzędzia pozwalające na szybkie wycofanie problematycznych aktualizacji w środowisku testowym, zanim zostaną wdrożone na większą skalę. To może obejmować tworzenie punktów przywracania systemu, backupów, korzystania z zapasowych partycji lub snapshotów maszyn wirtualnych przed wdrożeniem aktualizacji.
- Oprócz standardowych testów, warto przetestować scenariusze awaryjne, takie jak przywracanie systemu po awarii, restart systemu po BSOD czy odtwarzanie danych z backupu. Umożliwia to przygotowanie się na najgorsze scenariusze.
- Zalecane jest dokładnie udokumentowanie potencjalnego ryzyka i metody postępowania w przypadku problemów.
- Przed każdą aktualizacją dobrze jest dokonać ocenę ryzyka, analizując aspekty krytyczności aktualizacji i jej wpływ na organizację, a także potencjalne zagrożenia i korzyści związane z wdrożeniem. 8. Dodatkowo w przypadku aktualizacji o wysokim ryzyku, warto z wyprzedzeniem poinformować użytkowników i właścicieli usług oraz zadbać o wsparcie techniczne w okresie przejściowym.
– Opisany model należy traktować jako idealny. Warto zwrócić uwagę, że nierzadko oprogramowanie umożliwia wybór pomiędzy ręczną i kontrolowaną aktualizacją, a w pełni automatyczną. Tak jest w przypadku większości programów EDR, podobnych do CrowdStrike Falcon. Na przykład Stormshield Endpoint Security oferuje możliwość ręcznej aktualizacji. Choć korzystanie z tej opcji wymaga większego zaangażowania, to może przynieść wiele korzyści – wskazał Aleksander Kostuch.
Zaplanuj, jak będziesz działać w trakcie awarii
Obok aktualizacji, eksperci zwracają uwagę na znaczenie planów ciągłości działania (BCP-business continuity plan) oraz procedur odzyskiwania dostępu do danych i systemów IT po awarii (DR-disaster recovery).
– Określają one, w jaki sposób firma będzie działać w sytuacji kryzysowej, nawet jeśli będzie musiała przenieść się do innej lokalizacji. Oczywiście, samo przygotowanie planów nie wystarczy, należy je cyklicznie testować i dostosowywać do aktualnych warunków funkcjonowania organizacji – zwrócił uwagę Paweł Śmigielski, country manager Stormshield w Polsce.