Microsoft powołał się na orzeczenie antymonopolowe UE z 2009 r. jako linię obrony, ponieważ pojawiły się pytania, dlaczego produkt innej firmy był w stanie zablokować działanie systemu Windows.
W piątek 19 lipca na 8,5 miliona komputerów pojawił się tzw. niebieski ekran śmierci, który pojawia się, gdy system operacyjny Windows ulega poważnemu uszkodzeniu i zatrzymuje się, aby zapobiec dalszym uszkodzeniom.
Takie zdarzenia się zdarzają, ale ich główną przyczyną jest wadliwa aktualizacja w oprogramowaniu antywirusowym innej firmy o nazwie Falcon, dostarczonym przez CrowdStrike. plik z błędami powinien zostać wykryty przez Falcona, ale i on miał błąd, który odczytał plik i spowodował awarię programu.
Awarie zdarzają się regularnie użytkownikom komputerów PC, ale bardzo rzadko powodują zatrzymanie systemu. W tym przypadku jednak, jak informował wcześniej Computer Weekly, Falcon działa jako sterownik urządzenia w trybie jądra w tym, co jest znane jako Ring Zero. Daje mu to pełny dostęp do systemu operacyjnego Windows, który jest tym samym dostępem, jaki mają podstawowe komponenty Windows opracowane przez Microsoft.
Microsoft twierdzi, iż powodem, dla którego CrowdStrike ma taki dostęp, jest orzeczenie Komisji Europejskiej z 2009 r., które stanowi, iż Microsoft musi zagwarantować, iż produkty innych firm będą mogły współpracować z odpowiednimi produktami systemu Microsoft, korzystając z tych samych informacji o interoperacyjności na takich samych zasadach jak inne produkty Microsoftu.
Ekspert ds. licencjonowania systemu Microsoft Bogaty Gibbons powiedział: „Microsoft spotkał się z krytyką za to, iż strona trzecia była w stanie wpłynąć na system Windows na tak głębokim poziomie technicznym. Ciekawe, iż Microsoft zwrócił uwagę na fakt, iż wynika to z orzeczenia antykonkurencyjnego UE z 2009 r., które oznacza, iż Microsoft musi dać innym firmom zajmującym się bezpieczeństwem taki sam dostęp do jądra systemu Windows, jaki mają oni sami”.
Gibbons uważa, iż skoro orzeczenie z 2009 r. w sprawie interoperacyjności oznacza, iż inne organizacje mogą zakłócić działanie systemu Windows w taki sam sposób, w jaki zrobił to sterownik urządzenia jądra CrowdStrike, Microsoft może wykorzystać tę katastrofę do odparcia interwencji UE.
„Czy Microsoft wykorzysta sytuację z CrowdStrike, aby sprzeciwić się temu orzeczeniu i/lub przyszłym orzeczeniom dotyczącym interoperacyjności produktów Microsoftu i czy użyje tego jako dodatkowej dźwigni, aby przekonać klientów do korzystania z własnych produktów zabezpieczających?” – zapytał.
Oczywiste jest, iż przed incydentem CrowdStrike firma Microsoft nie podnosiła publicznie kwestii bezpieczeństwa związanych z udostępnianiem dostępu do tych samych interfejsów API, z których korzysta wewnętrznie.
Wiadomo, iż w kwietniu serwery Linux napotkały podobny problem z powodu CrowdStrike, co zdaniem niektórych komentatorów branżowych wskazywało na brak kontroli jakości, którego ani CrowdStrike, ani Microsoft nie naprawiły w odpowiedni sposób.
Apple MacOS nie ucierpiał na skutek piątkowej awarii, ponieważ korzysta z Apple Endpoint Security Framework, interfejsu API, którego dostawcy systemu antywirusowego używają do uzyskiwania informacji telemetrycznych z rdzenia systemu operacyjnego MacOS. Oznacza to, iż nie muszą uruchamiać swojego kodu w rdzeniu MacOS w Ring Zero, gdzie musiała działać wersja Falcona firmy CrowdStrike dla systemu Windows.
Pojawiają się pytania, dlaczego Microsoft nie dostarczył czegoś podobnego. Częścią problemu jest to, iż Windows, w przeciwieństwie do MacOS, oferuje wsteczną kompatybilność, obejmującą wiele lat. Ale przepisy antykonkurencyjne mogły również odegrać rolę.
Według byłego programisty Windows Davida Plummera, Microsoft faktycznie oferuje szereg interfejsów API do zabezpieczeń antywirusowych innych firm. „CrowdStrike domyślnie przechodzi w tryb jądra, prawdopodobnie dlatego, iż musi wykonywać czynności, których nie można wykonać w trybie użytkownika” – powiedział Plummer w Film z YouTube’a.
„I moim zdaniem to właśnie tutaj odpowiedzialność może ponosić Microsoft, ponieważ na platformie Windows, o ile mi wiadomo, część funkcji bezpieczeństwa CrowdStrike wymaga głębokiej integracji z systemem operacyjnym, co w tej chwili można osiągnąć jedynie po stronie jądra”.
Firma Microsoft udostępnia szereg interfejsów API, w tym Windows Defender Application Control API i Windows Defender Device Guard, które według Plummera zapewniają mechanizmy kontrolujące wykonywanie aplikacji i zapewniające, iż w systemie operacyjnym uruchamiany jest wyłącznie zaufany kod.
Powiedział, iż Windows Filtering Platform (WFP) pozwala aplikacjom na interakcję ze stosem sieciowym bez konieczności stosowania kodu na poziomie jądra. Jednak cytując źródła w Microsoft, Plummer twierdził, iż firma faktycznie „próbowała zrobić adekwatną rzecz”, opracowując zaawansowane API zaprojektowane specjalnie dla aplikacji zabezpieczających, takich jak CrowdStrike.
„To API zapewniało głębszą integrację z systemem operacyjnym Windows, oferując zwiększoną stabilność, wydajność i bezpieczeństwo” – dodał.
Jednak orzeczenie UE z 2009 r. skutecznie zapobiegło takiej integracji, ponieważ potencjalnie mogłaby dać firmie Microsoft nieuczciwą przewagę.
Jednakże, Ian Brown, niezależny konsultant w sprawie regulacji internetu argumentował, iż Microsoft powinien mieć lepsze środki kontroli bezpieczeństwa, zamiast zrzucać winę za awarię CrowdStrike na unijną komisję antykonkurencyjną.
Na blogu napisał: „Aby zapewnić odporność społeczeństw zależnych od technologii, oprogramowanie na poziomie jądra systemu operacyjnego i jego odpowiedniki w systemach infrastruktury o znaczeniu społecznym (takich jak podróże, opieka zdrowotna i bankowość) muszą być bardzo dokładnie testowane (i najlepiej uruchamiane na formalnie zweryfikowanym mikrojądrze) i kontrolowane. Jednak monopoliści systemów operacyjnych nie powinni podejmować ostatecznych decyzji dotyczących tego, jak dokładnie wyglądają te kontrole, jeżeli mają one wpływ na konkurencję”.