Komponenty Flame’a podpisane prawidłowym certyfikatem Microsoftu

Jedną z głównych różnic między niedawno odkrytym wirusem Flame a Stuxnetem był fakt, że Flame nie korzystał z kradzionych certyfikatów do podpisywania swojego kodu. Jak się jednak okazuje, jego twórcy znaleźli inny sposób na zmniejszenie wykrywalności.
Zespół Microsoft Security Response Center ogłosił właśnie konieczność odwołania trzech cyfrowych certyfikatów, których ścieżka zaufania prowadzi do Microsoft Certificate Authority. Wydana została pilna poprawka (KB2718704) unieważniająca certyfikaty Microsoft Enforced Licensing Intermediate PCA (w sumie 2) oraz Microsoft Enforced Licensing Registration Authority CA. Co spowodowało tak nagłą reakcję Microsoftu?
Komponenty Flame’a podpisane przez Microsoft?
Pracownicy Microsoftu, pracujący nad analizą wirusa Flame, odkryli, że komponent odpowiedzialny za aktualizacje wirusa został podpisany za pomocą certyfikatu, przypisującego jego autorstwo Microsoftowi. Bez wątpienia takie sygnatury ułatwiały wirusowi uniknięcie wykrycia przez produkty antywirusowe – z definicji pliki podpisane prawidłowym certyfikatem Microsoftu mogły być traktowane jako bardziej zaufane. W przypadku Stuxnetu do podpisania kodu autorzy wirusa użyli wykradzionych certyfikatów. Czy tak też było w przypadku Flame’a?
Skąd te certyfikaty
Śledztwo Microsoftu wykazało, że przyczyną pojawienia się nieautoryzowanych certyfikatów był błąd sprzed wielu lat. Elementem systemu Microsoft Terminal Services jest serwer licencyjny Terminal Services, służący do wydawania licencji dostępowych (CAL). W ramach procesu licencjonowania oprogramowania serwer ten otrzymuje bezpośrednio od Microsoftu swój indywidualny certyfikat podrzędnego urzędu certyfikacji w standardzie X.509, potwierdzający tożsamość posiadacza serwera. Jak się okazało, certyfikat ten umożliwiał podpisywanie dowolnego kodu – w tym również komponentów wirusa.
Microsoft poinformował także, że elementem ataku była kolizja kryptograficzna. Oznacza to, że atakujący mógł wygenerować certyfikat o identycznej sygnaturze jak certyfikat oryginalny. Nie został jednak opisany mechanizm połączenia problemu kolizji z nieprawidłowym certyfikatem Terminal Services.
Reakcja Microsoftu
Choć od nieautoryzowanego podpisania kodu minęło już półtora roku i przestępcy mieli mnóstwo okazji, by wykorzystać odkryty błąd, Microsoft podjął szybkie kroki by zapobiec podobnym sytuacjom w przyszłości. Wszystkie certyfikaty, które mogły być wykorzystane do tworzenia fałszywych podpisów, zostały unieważnione a serwer Terminal Services został tak zmodyfikowany, by uniemożliwić podpisywanie obcego kodu. Nie da się jednak ukryć, że pewien niesmak pozostał…
Podobne wpisy
- Podstawy Bezpieczeństwa: Jak zadbać o swoją prywatność, używając Windowsa
- Wykorzystywanie odcisku palca dokumentu w Microsoft Data Loss Prevention
- Podstawy Bezpieczeństwa: Microsoft Defender – jak go najlepiej skonfigurować
- Kryptografia jest trudna, czyli CVE-2020-0601 aka CurveBall aka ChainOfFools
- Jak uniknąć więzienia za kradzież przedpremierowych danych z Microsoftu i Nintendo
komentarze 2
[…] się w ciągu ostatniego roku. W gronie nominowanych znaleźli się autorzy wirusa Flame za przełomową kolizję certyfikatu Microsoftu, umożliwiającą fałszowanie podpisu cyfrowego kodu wirusa i jego rozpowszechnianie rpzez […]
[…] mechanizmy kryptograficzne, podrobienie oryginalnego podpisu jest bardzo trudne (choć, jak pokazali autorzy wirusa Flame, nie jest całkiem niemożliwe). W związku z tym przestępcy próbują ukraść oryginalny […]