Reklama
Podpisywanie kodu to praktyka kryptograficznego podpisywania oprogramowania, aby system operacyjny i jego użytkownicy mogli sprawdzić, czy jest bezpieczny. Podpisywanie kodu działa ogólnie dobrze. Przez większość czasu tylko prawidłowe oprogramowanie korzysta z odpowiedniego podpisu kryptograficznego.
Użytkownicy mogą bezpiecznie pobierać i instalować, a programiści chronią reputację swoich produktów. Jednak hakerzy i dystrybutorzy złośliwego oprogramowania używają tego dokładnego systemu, aby pomóc złośliwemu kodowi ominąć pakiety antywirusowe i inne programy bezpieczeństwa.
Jak działa złośliwe oprogramowanie i oprogramowanie ransomware sygnowane kodem?
Co to jest złośliwe oprogramowanie podpisane kodem?
Gdy oprogramowanie jest podpisane kodem, oznacza to, że oprogramowanie ma oficjalny podpis kryptograficzny. Urząd certyfikacji (CA) wydaje oprogramowaniu certyfikat potwierdzający, że oprogramowanie jest zgodne z prawem i bezpieczne w użyciu.
Co więcej, system operacyjny zajmuje się certyfikatami, sprawdzaniem kodu i weryfikacją, więc nie musisz się martwić. Na przykład system Windows używa tak zwanego
łańcuch certyfikatów. Łańcuch certyfikatów składa się ze wszystkich certyfikatów potrzebnych do zapewnienia legalności oprogramowania na każdym etapie.„Łańcuch certyfikatów składa się ze wszystkich certyfikatów potrzebnych do certyfikacji podmiotu określonego w certyfikacie końcowym. W praktyce obejmuje to certyfikat końcowy, certyfikaty pośrednich urzędów certyfikacji oraz certyfikat głównego urzędu certyfikacji zaufany przez wszystkie strony w łańcuchu. Każdy pośredni urząd certyfikacji w łańcuchu posiada certyfikat wydany przez urząd certyfikacji jeden poziom nad nim w hierarchii zaufania. Główny urząd certyfikacji wydaje sam sobie certyfikat. ”
Gdy system działa, możesz zaufać oprogramowaniu. CA i system podpisywania kodu wymagają ogromnego zaufania. W związku z tym złośliwe oprogramowanie jest złośliwe, niewiarygodne i nie powinno mieć dostępu do urzędu certyfikacji ani podpisywania kodu. Na szczęście w praktyce tak działa system.
Oczywiście, dopóki twórcy szkodliwego oprogramowania i hakerzy nie znajdą sposobu na obejście tego problemu.
Hakerzy kradną certyfikaty od urzędów certyfikacji
Twój program antywirusowy wie, że złośliwe oprogramowanie jest złośliwe, ponieważ ma negatywny wpływ na twój system. Wywołuje ostrzeżenia, użytkownicy zgłaszają problemy, a program antywirusowy może utworzyć sygnaturę złośliwego oprogramowania, aby chronić inne komputery za pomocą tego samego narzędzia antywirusowego.
Jeśli jednak twórcy szkodliwego oprogramowania mogą podpisać swój złośliwy kod przy użyciu oficjalnego podpisu kryptograficznego, nic takiego się nie wydarzy. Zamiast tego złośliwe oprogramowanie podpisane kodem przejdzie przez frontowe drzwi, gdy Twój program antywirusowy i system operacyjny wprowadzą czerwony dywan.
Badania Trend Micro odkrył, że istnieje cały rynek złośliwego oprogramowania wspierający rozwój i dystrybucję złośliwego oprogramowania podpisanego kodem. Operatorzy złośliwego oprogramowania uzyskują dostęp do ważnych certyfikatów, których używają do podpisywania złośliwego kodu. Poniższa tabela pokazuje liczbę szkodliwych programów wykorzystujących podpisywanie kodu w celu obejścia programu antywirusowego, według stanu na kwiecień 2018 r.
Badanie Trend Micro wykazało, że około 66 procent próbionego złośliwego oprogramowania było podpisane kodem. Ponadto niektóre typy złośliwego oprogramowania zawierają więcej instancji do podpisywania kodu, takich jak trojany, droppery i oprogramowanie ransomware. (Tu są siedem sposobów na uniknięcie ataku ransomware 7 sposobów na uniknięcie trafienia przez RansomwareRansomware może dosłownie zrujnować Ci życie. Czy robisz wszystko, aby uniknąć utraty danych osobowych i zdjęć w wyniku wymuszenia cyfrowego? Czytaj więcej !)
Skąd pochodzą certyfikaty do podpisywania kodu?
Dystrybutorzy i programiści złośliwego oprogramowania mają dwie opcje dotyczące oficjalnie podpisanego kodu. Certyfikaty są albo skradzione z urzędu certyfikacji (bezpośrednio, albo w celu odsprzedaży), albo haker może próbować naśladować legalną organizację i sfałszować jej wymagania.
Jak można się spodziewać, urząd certyfikacji jest kuszącym celem dla każdego hakera.
To nie tylko hakerzy podsycają wzrost złośliwego oprogramowania z kodem. Rzekomo pozbawieni skrupułów dostawcy z dostępem do legalnych certyfikatów sprzedają zaufane certyfikaty do podpisywania kodu również twórcom i dystrybutorom złośliwego oprogramowania. Zespół badaczy bezpieczeństwa z Uniwersytetu Masaryka w Czechach i Maryland Cybersecurity Center (MCC) odkryłem cztery organizacje sprzedające [PDF] Certyfikaty Microsoft Authenticode dla anonimowych nabywców.
„Ostatnie pomiary ekosystemu certyfikatów do podpisywania kodu Windows uwidoczniły różne formy nadużyć, które pozwalają autorom złośliwego oprogramowania na wytwarzanie złośliwego kodu zawierającego prawidłowe podpisy cyfrowe”.
Gdy twórca złośliwego oprogramowania ma certyfikat Microsoft Authenticode, może podpisać dowolne złośliwe oprogramowanie, próbując zanegować podpisywanie kodu zabezpieczającego Windows i obronę opartą na certyfikatach.
W innych przypadkach, zamiast ukraść certyfikaty, haker naruszy serwer kompilacji oprogramowania. Gdy nowa wersja oprogramowania zostanie opublikowana, opatrzona jest legalnym certyfikatem. Ale haker może również włączyć do tego złośliwy kod. Poniżej możesz przeczytać o niedawnym przykładzie tego typu ataku.
3 przykłady złośliwego oprogramowania podpisanego kodem
Jak więc wygląda złośliwe oprogramowanie podpisane kodem? Oto trzy przykłady złośliwego oprogramowania podpisanego kodem:
- Złośliwe oprogramowanie Stuxnet. Złośliwe oprogramowanie odpowiedzialne za zniszczenie irańskiego programu nuklearnego wykorzystało do rozpowszechnienia dwa skradzione certyfikaty oraz cztery różne exploity zero-day. Certyfikaty zostały skradzione z dwóch oddzielnych firm - JMicron i Realtek - które miały wspólny budynek. Stuxnet wykorzystał skradzione certyfikaty, aby uniknąć nowo wprowadzonego wymogu Windows, że wszystkie sterowniki wymagają weryfikacji (podpisywania sterowników).
- Naruszenie serwera Asus. Od czerwca do listopada 2018 r. Hakerzy złamali serwer Asus, którego firma używa do przekazywania użytkownikom aktualizacji oprogramowania. Badacze z Kaspersky Lab znalazłem to w pobliżu 500 000 komputerów z systemem Windows otrzymało złośliwą aktualizację, zanim ktokolwiek się zorientował. Zamiast kraść certyfikaty hakerzy podpisali swoje złośliwe oprogramowanie za pomocą legalnych certyfikatów cyfrowych Asus, zanim serwer oprogramowania rozpowszechnił aktualizację systemu. Na szczęście szkodliwe oprogramowanie było wysoce ukierunkowane, zakodowane na stałe w poszukiwaniu 600 konkretnych maszyn.
- Złośliwe oprogramowanie Flame. Modułowy wariant złośliwego oprogramowania Flame atakuje kraje Bliskiego Wschodu, wykorzystując fałszywie podpisane certyfikaty, aby uniknąć wykrycia. (Co to jest modułowe złośliwe oprogramowanie Modułowe złośliwe oprogramowanie: nowy niewidzialny atak kradnący daneZłośliwe oprogramowanie stało się trudniejsze do wykrycia. Co to jest modułowe złośliwe oprogramowanie i jak go zatrzymać, siejąc spustoszenie na komputerze? Czytaj więcej ?) Programiści Flame wykorzystali słaby algorytm kryptograficzny do fałszywego podpisywania certyfikatów podpisujących kod, dzięki czemu wyglądało to tak, jakby Microsoft je podpisał. W przeciwieństwie do Stuxneta, który niósł destrukcyjny element, Flame jest narzędziem do szpiegostwa, wyszukiwania plików PDF, plików AutoCAD, plików tekstowych i innych ważnych typów dokumentów przemysłowych.
Jak uniknąć złośliwego oprogramowania podpisanego kodem
Trzy różne warianty złośliwego oprogramowania, trzy różne typy ataku podpisującego kod. Dobra wiadomość jest taka, że większość złośliwych programów tego typu, przynajmniej w chwili obecnej, jest wysoce ukierunkowana.
Drugą stroną jest to, że ze względu na skuteczność takich wariantów złośliwego oprogramowania, które unikają podpisywania kodu wykrywania, spodziewaj się, że więcej twórców złośliwego oprogramowania skorzysta z tej techniki, aby upewnić się, że są to własne ataki odnoszący sukcesy.
Ponadto ochrona przed złośliwym oprogramowaniem podpisanym kodem jest niezwykle trudna. Utrzymanie aktualności systemu i pakietu antywirusowego jest niezbędne, unikaj klikania nieznanych łączy i dokładnie sprawdź, gdzie prowadzi dowolny link, zanim go przejdziesz.
Oprócz aktualizacji programu antywirusowego sprawdź naszą listę jak możesz uniknąć złośliwego oprogramowania Oprogramowanie antywirusowe to za mało: 5 rzeczy, które musisz zrobić, aby uniknąć złośliwego oprogramowaniaZachowaj bezpieczeństwo online po zainstalowaniu oprogramowania antywirusowego, wykonując następujące kroki w celu bezpieczniejszego korzystania z komputera. Czytaj więcej !
Gavin jest starszym pisarzem dla MUO. Jest także redaktorem i menedżerem SEO dla siostrzanej strony MakeUseOf, Blocks Decoded. Ma licencjat z wyróżnieniem (z wyróżnieniem) z zakresu sztuki cyfrowej zdobyte na wzgórzach Devon, a także ponad dekadę doświadczenia zawodowego w pisaniu. Lubi dużo herbaty.