[Aktualizacja #3] DoubleAgent to niebezpieczna podatność, która może nas pozbawić kontroli nad antywirusami

22 marca, 2017

Od pewnego czasu różne firmy oraz osoby prywatne sprawdzają bezpieczeństwo oprogramowania stworzonego właśnie do tego celu. Jak na ironię, publikowane są tylko złe informacje, które dokładnie przedstawiają dowód koncepcji skutecznego wykorzystania exploita i przejęcia kontroli nad aplikacją lub systemem operacyjnym. O problemach obejścia zabezpieczenia poszczególnych programów ochronnych nikt nie pisze, a szkoda. Jeśli testy penetracyjne byłyby przeprowadzane regularnie – tak, jak testy ochrony – mogłyby pokazać, które firmy zajmujące się tworzeniem oprogramowania zabezpieczającego naprawdę przykładają się bezpieczeństwa, a które robią to tylko dla zysków i po łebkach.

Nową podatność (do pobrania PoC na GitHub od Windows XP do 10) – i to nie w antywirusach, ale dzięki której możliwe jest zaatakowanie antywirusów – odkryto w Windowsie, a konkretnie w weryfikatorze aplikacji (dostępnym w Windows). Narzędzie to umożliwia programistom sprawdzanie kodów błędów podczas uruchamiania aplikacji i działa poprzez załadowanie biblioteki DLL do programu, który poddany jest procesowi debugowania.

Luka została odkryta przez pracownika izraelskiej firmy Cybellum, która zatrudnia wysoko wykwalifikowanych ekspertów ds. bezpieczeństwa mających doświadczenie w wywiadzie wojskowym Izraela.

Nowa technika nazwana DoubleAgent w Windows 10 x64 pozwala atakującemu oszukać popularne produkty bezpieczeństwa (Avast, AVG, Avira, Bitdefender, Trend Micro, Comodo, ESET, F-Secure, Kaspersky, Malwarebytes, McAfee, Panda, Quick Heal i Norton) umieszczając szkodliwy kod w innej aplikacji zainstalowanej w systemie operacyjnym w postaci biblioteki DLL załadowanej do dowolnego procesu. Kilku producentów już zdołało załatać podatność – badacze zachowali 90-dniowy okres nieujawniania opinii publicznej informacji o podatności i we współpracy z Malwarebytes, AVG i Trend Micro udało im się opracować aktualizacje bezpieczeństwa.

Na dzień dzisiejszy wolne od podatności są antywirusy:

  • Malwarebytes w wersji3.0.6 + Component Update 3”.
  • AVG w wersji 16.151.8007.

Trend Micro wkrótce udostępni aktualizację.

Jak zaznacza Michael Engstler, CTO firmy Cybellum – pozostali producenci nie byli tak skorzy do współpracy, jak Malwarebytes, AVG i Trend Micro.

CVE (Common Vulnerabilities and Exposures), czyli wyjaśnienia podatności przypisano po 90 dniach do Avasta (CVE-2017-5567), AVG (CVE-2017-5566), Aviry (CVE-2017-6417), Bitdefendera (CVE-2017-6186) i Trend Micro (CVE-2017-5565). CVE dla Comodo, Eseta, F-Secure i Kaspersky nie zostały potwierdzone, chociaż badacze twierdzą, że wszystkie przebadane przez nich programy były podatne na atak DoubleAgent.

Co DoubleAgent jest w stanie zrobić z antywirusami?

Używając DoubleAgent, atakujący mogą przejąć pełną kontrolę nad programem i zrobić z systemem operacyjnym cokolwiek zechcą, bez obawy, że zostaną wykryci:

1. Wykorzystując podatność, możliwe jest zamienienie antywirusa w złośliwe oprogramowanie – dosłownie. Antywirus jest uznawany przez system za szczególnie uprzywilejowaną aplikację, więc każda operacja wykonywana przez ten program uznawana jest za zaufaną.

2. Możliwe jest modyfikowanie działania antywirusa, np. zamiana białych list z czarnymi lub instalowanie backdoorów. Antywirus nadal będzie działał „normalnie”, ale będzie całkowicie bezużyteczny.

3. Antywirusy mogą zostać wykorzystane do wykonywania szkodliwych akcji: komunikacji z C&C, kradzieży danych, odszyfrowywania poufnych danych. Wszystkie te operacje będą dopuszczone do działania, więc tak naprawdę program ochronny będzie pod kontrolą napastników.

4. Za pomocą programu antywirusowego możliwe będzie formatowanie dysków i szyfrowanie plików, usuwanie aplikacji, blokowanie przeglądarek, edytorów tekstu… Jednym słowem, DoubleAgent spowoduje całkowity paraliż w funkcjonowaniu firmy.

Co zrobić?

Aktualizować antywirusy. To jedyna metoda obrony przed atakiem DoubleAgent. Jego skuteczne wykonanie w sieci domowej lub firmowej będzie wymagało dostarczenia szkodliwego ładunku do systemu operacyjnego, ale jak wiemy, dobra socjotechnika może otworzyć dostęp nawet do najbardziej bezpiecznego ekosystemu. Jeśli producenci nie załatają luk w zabezpieczeniach, już wkrótce możemy być świadkami skutecznego wykorzystania DoubleAgent w środowisku naturalnym.

Autor badania wskazuje, że firma Microsoft 3 lata temu dostarczyła nową koncepcję dla producentów oprogramowania antywirusowego o nazwie „chronione procesy”, która została specjalnie zaprojektowana do obsługi aplikacji antywirusowych w systemie. Procesy antywirusowe powinny być kreowane jako „procesy chronione”, które dzięki nowym założeniom Microsoftu, zostaną załadowane, jeśli będą podpisane cyfrowo. Oznacza to, że jeśli napastnik znajdzie nową lukę 0-day w celu wstrzyknięcia kodu, nie będzie w stanie jej wykorzystać przeciwko programowi antywirusowemu, ponieważ taki kod nie będzie podpisany.

Obecnie żaden program antywirusowy (z wyjątkiem Windows Defender) nie korzysta z tej koncepcji. Chociaż trzeba zaznaczyć, że producenci oprogramowania antywirusowego blokują próby wczytywania kodu do własnych procesów, to ich całkowite wyeliminowanie jest walką z wiatrakami.

DoubleAgent1
Norton przed atakiem DoubleAgent.
DoubleAgent2
Po ataku. Norton całkowicie zmodyfikowany.

[ Aktualizacja #1, 22.03.2017 ]

Stanowisko Kaspersky Lab w sprawie DoubleAgent, czyli techniki omijania zabezpieczeń Windows oraz antywirusów:

Kaspersky Lab docenia wysiłki wkładane przez niezależnych badaczy w wykrywanie nowych podatności w systemach operacyjnych i oprogramowaniu. Organizacja Cybellum Technologies LTD poinformowała o luce, która pozwala na wykonanie ataku DLL Hijack przy użyciu nieudokumentowanej funkcji narzędzia Microsoft Application Verifier. Pozwala to potencjalnemu atakującemu na wstrzyknięcie kodu do większości procesów systemowych, nie tylko do procesów rozwiązań antywirusowych.

Należy dodać, że taki atak może zostać przeprowadzony wyłącznie poprzez wektor lokalny, gdy atakujący dostał się wcześniej do urządzenia. Atakujący musi zatem najpierw zainfekować komputer szkodliwym oprogramowaniem i eskalować uprawnienia, aby móc zarejestrować nową bibliotekę DLL narzędzia Application Verifier Provider – czynności te wymagają wykorzystania szeregu innych narzędzi.

Wykrywanie i blokowanie tego szkodliwego scenariusza zostało dodane do wszystkich produktów Kaspersky Lab 22 marca 2017 r. W celu zapewnienia ochrony Kaspersky Lab zaleca swoim klientom, by na bieżąco uaktualniali swoje rozwiązania bezpieczeństwa i nie wyłączali funkcji pozwalających na wykrywanie zagrożeń na podstawie ich zachowania w systemie. 

[ Aktualizacja #2, 24.03.2017 ]

Sprawę skomentował wiceprezes ds. technicznych Comodo, Egemen Tas:

Wbrew temu, co powiedział Micheal (z firmy Cybellum, przyp. redakcja), Comodo nie jest podatne na ten atak. Mieliśmy długą dyskusję na ten temat i doszliśmy razem do wniosku, że złośliwe oprogramowanie faktycznie może używać klucza rejestru do wstrzyknięcia kodu do dowolnego procesu (także Comodo), a tym samym wyłączyć ochronę.

Wstrzyknięcie biblioteki DLL za pośrednictwem AppVerifier było możliwe już w Windows XP, ale Comodo domyślnie chroni te klucze przed złośliwymi modyfikacjami (załącznik poniżej, dodaje redakcja). Jednakże, aby atak mógł się zakończyć sukcesem, malware musi korzystać z klucza, który domyślnie chroniony jest przez Comodo lub musi znaleźć się na białej liście oprogramowania dozwolonego do działania. Aplikacje, które nie są na białej liście, będą blokowane lub uruchomione w piaskownicy, więc atak zakończy się niepowodzeniem.

Co więcej, istnieją setki podobnych sposobów wstrzykiwania kodu do innych procesów i nie jestem pewny, czy inni producenci są tego świadomi. Większość nieporozumień (pomiędzy firmą, która zaprezentowała atak, a Comodo, przyp. Redakcja) uwarunkowana jest niezrozumieniem zasady działania warstw ochrony Comodo i przy założeniu, że Comodo traktowany jest jako klasyczny produkt antywirusowy. Comodo nie tylko chroni swoje procesy przed takimi atakami, ale także wszystkie inne aplikacje.

CIS Protected
Domyślne reguły ustawione przez producenta zapobiegają atakom na procesy antywirusa oraz inne aplikacje.

[ Aktualizacja #3, 24.03.2017 ]

Oficjalne oświadczenie firmy ESET:

Po otrzymaniu informacji nt. ataku DoubleAgent, zespół odpowiedzialny za rozwój technologii ESET natychmiast rozpoczął analizę tej podatności. Zidentyfikowano produkty dla systemu Windows, których mógłby dotyczyć opisany atak. Wysoce nieprawdopodobne jest jednak zaistnienie sytuacji, w której luka ta mogłaby być faktycznie wykorzystana, m.in. z uwagi na konieczność posiadania przez atakującego pełnych praw administratora na danej maszynie.

Programy ESET, na których aktywna jest autoochrona przed modyfikacją aplikacji lub jej usunięciem, nie są podatne na opisaną podatność i atak. Mimo niewielkiego prawdopodobieństwa wykorzystania wskazanej podatności, zespół ESET potraktował zgłoszony problem poważnie i podjął prace nad przygotowaniem specjalnej poprawki, która wyeliminuje wskazywaną podatność. Przygotowywana poprawka już została udostępniona klientom ESET wraz z najnowszą aktualizacją produktu.

Adrian Ścibor

Adrian Ścibor

W ramach działań związanych z cyberbezpieczeństwem odpowiada w AVLab za przeprowadzanie testów rozwiązań ochronnych przed zagrożeniami. Opracowuje strategie oraz narzędzia, które pomagają w ochronie danych i systemów przed cyberatakami. Współuczestnik międzynarodowej grupy non-profit AMTSO, która zrzesza ekspertów IT.
Adrian Ścibor

Adrian Ścibor

W ramach działań związanych z cyberbezpieczeństwem odpowiada w AVLab za przeprowadzanie testów rozwiązań ochronnych przed zagrożeniami. Opracowuje strategie oraz narzędzia, które pomagają w ochronie danych i systemów przed cyberatakami. Współuczestnik międzynarodowej grupy non-profit AMTSO, która zrzesza ekspertów IT.

PODZIEL SIĘ:

Czy ten artykuł był pomocny?

Średnia ocena: 0 / 5. Liczba głosów: 0

guest
0 komentarzy
Inline Feedbacks
View all comments

Wyrażam zgodę na przesłanie oferty drogą telefoniczną przez IT Partners security sp. z o.o. z siedzibą Katowicach ul.Padereskiego 35 na podany przeze mnie adres e-mail zgodnie z ustawą z dnia 10 maja 2018 roku o ochronie danych osobowych (Dz. Ustaw z 2018, poz. 1000) oraz zgodnie z Rozporządzeniem Parlamentu Europejskiego i Rady (UE) 2016/679 z dnia 27 kwietnia 2016 r. w sprawie ochrony osób fizycznych w związku z przetwarzaniem danych osobowych i w sprawie swobodnego przepływu takich danych oraz uchylenia dyrektywy 95/46/WE (RODO).

Wyrażam zgodę na przesłanie oferty drogą mailową przez IT Partners security sp. z o.o. z siedzibą Katowicach ul.Padereskiego 35 na podany przeze mnie adres e-mail zgodnie z ustawą z dnia 10 maja 2018 roku o ochronie danych osobowych (Dz. Ustaw z 2018, poz. 1000) oraz zgodnie z Rozporządzeniem Parlamentu Europejskiego i Rady (UE) 2016/679 z dnia 27 kwietnia 2016 r. w sprawie ochrony osób fizycznych w związku z przetwarzaniem danych osobowych i w sprawie swobodnego przepływu takich danych oraz uchylenia dyrektywy 95/46/WE (RODO).

[ninja_tables id=”27481″]