Jak usunąć złośliwe oprogramowanie Flashback z OS X

Podczas gdy OS X był stosunkowo wolny od złośliwego oprogramowania przez pierwsze 10 lat użytkowania, ostatnio pojawiły się przerażające szkodniki, które dotknęły znaczną liczbę systemów Mac.

Jednym z pierwszych było fałszywe oszustwo antywirusowe MacDefender, które powodowało, że ludzie wydający informacje o kartach kredytowych obawiali się, że ich systemy zostały zainfekowane. Oszustwo to zmieniło się dość szybko, ponieważ próbowało uniknąć wykrycia i dalej zachęcało ludzi do podawania danych osobowych. Kolejnym oszustwem było złośliwe oprogramowanie DNSChanger, które dotknęło miliony komputerów PC na całym świecie, i które ostatecznie skierowało zainfekowane systemy do złośliwych witryn sieci Web, i podobnie jak złośliwe oprogramowanie MacDefender próbowało skłonić ludzi do oferowania danych osobowych.

Najnowszym złośliwym oprogramowaniem, które trafiło do OS X, było oszustwo Flashback, które początkowo zaczęło się jako fałszywa aplikacja instalatora Flash Player, której stosunkowo łatwo można było uniknąć. Jednak zagrożenie szybko przekształciło się w poważniejsze zagrożenie, wykorzystując niezałatane luki w zabezpieczeniach w Javie (które firma Apple od tamtego czasu zaadresowała), aby zainstalować na komputerze Mac z uruchomioną Javą, odwiedzając jedynie złośliwą stronę sieci Web i nie wymagającą uwagi użytkownika. Szacuje się, że do tej pory zainfekowało ponad 600 000 komputerów Mac na całym świecie, a większość w Stanach Zjednoczonych i Kanadzie.

Jak to działa?

Flashback wstrzykuje kod aplikacjom (w szczególności przeglądarkom internetowym), które zostaną uruchomione po uruchomieniu, a następnie przesyłają zrzuty ekranu i inne informacje osobiste do zdalnych serwerów.

Pierwszy krok: Eksploatacja Java

Kiedy napotkasz złośliwą stronę internetową zawierającą szkodliwe oprogramowanie i masz niezałatowaną wersję Java uruchomioną w twoim systemie, najpierw uruchomi mały aplet Java, który po uruchomieniu złamie zabezpieczenia Java i napisze mały program instalacyjny do konta użytkownika. Program nazywa się coś w stylu .jupdate, .mkeeper, .flserv, .null lub .rserv, a okres przed nim sprawia, że ​​wygląda on ukryty w domyślnym widoku Findera.

Ponadto aplet Java napisze plik programu uruchamiającego o nazwie "com.java.update.plist", "com.adobe.reader.plist", "com.adobe.flp.plist" lub nawet "null.plist" do folderu ~ / Library / LaunchAgents / bieżącego użytkownika, który będzie stale uruchamiał program .jupdate za każdym razem, gdy użytkownik jest zalogowany.

Aby uniknąć wykrycia, instalator najpierw poszukuje obecności niektórych narzędzi antywirusowych i innych narzędzi, które mogą być obecne w systemie użytkownika zaawansowanego, który według F-Secure obejmuje:

/ Library / Little Snitch

/Developer/Applications/Xcode.app/Contents/MacOS/Xcode

/ Applications / VirusBarrier X6.app

/Aplikacje/iAntiVirus/iAntiVirus.app

/Applications/avast !.app

/Applications/ClamXav.app

/Applications/HTTPScoop.app

/ Applications / Packet Peeper.app

Jeśli te narzędzia zostaną znalezione, złośliwe oprogramowanie zostanie usunięte, aby zapobiec wykryciu przez tych, którzy mają na to środki i możliwości. Wiele szkodliwych programów używa tego zachowania, co zaobserwowano u innych, takich jak bot malware Tsunami.

Drugi krok: pobranie ładunku

Po uruchomieniu programu jupdate łączy się ze zdalnym serwerem i pobiera program ładujący, którym jest samo złośliwe oprogramowanie, i który składa się z dwóch komponentów. Pierwsza to główna część szkodliwego oprogramowania, która wykonuje przechwytywanie i przesyłanie danych osobowych, a druga to komponent filtrujący, który jest używany do zapobiegania uruchamianiu złośliwego oprogramowania, o ile nie są używane określone programy, takie jak przeglądarki internetowe.

Trzeci krok: infekcja

Po pobraniu złośliwego oprogramowania i filtru szkodliwe oprogramowanie jest uruchamiane w celu zainfekowania systemu. W tym miejscu użytkownicy zobaczą ostrzeżenie o aktualizacji oprogramowania i zostaną poproszeni o podanie swoich haseł. Niestety w tym momencie nie ma nic, co mogłoby powstrzymać infekcję, a to, czy hasło zostanie dostarczone, zmienia jedynie tryb infekcji.

Podstawą procedury infekcji jest przechwytywanie plików konfiguracyjnych w systemie OS X, które są odczytywane i uruchamiane po uruchomieniu programów. Jedna z nich nosi nazwę "Info.plist" w folderze "Zawartość" w każdym pakiecie aplikacji systemu OS X i jest odczytywana za każdym razem, gdy dany program jest otwierany. Drugi nazywa się "environment.plist" i znajduje się na koncie użytkownika w ukrytym folderze (~ / .MacOSX / environment.plist), za pomocą którego można uruchamiać parametry za każdym razem, gdy dowolne programy są otwierane przez użytkownika.

Pierwszy rodzaj infekcji to podanie hasła, w którym to przypadku złośliwe oprogramowanie modyfikuje pliki Info.plist w Safari i Firefox w celu uruchomienia złośliwego oprogramowania za każdym razem, gdy te programy są otwierane. Jest to preferowany tryb infekcji złośliwego oprogramowania, ale jeśli hasło nie zostanie dostarczone, szkodliwe oprogramowanie przechodzi do drugiego trybu infekcji, w którym zmienia plik "environment.plist".

Korzystając z pliku environment.plist, złośliwe oprogramowanie będzie działało przy każdym otwarciu aplikacji, co może doprowadzić do awarii i innych dziwnych zachowań, które mogą spowodować alarm dla użytkownika, aby złośliwe oprogramowanie używało jego składnika filtru do uruchamiania tylko wtedy, gdy niektóre aplikacje są uruchamiane, takie jak Safari, Firefox, Skype, a nawet instalacje pakietu Office.

Tak czy inaczej, po pobraniu złośliwe oprogramowanie zainfekuje system za pomocą jednego z tych podejść i uruchomi się, gdy zostaną użyte docelowe aplikacje, takie jak przeglądarki internetowe. W nowszych wersjach szkodliwego oprogramowania, po zainstalowaniu przy użyciu pliku "environment.plist", system sprawdzi dodatkowo system, aby zapewnić kompletne instalacje programów, takich jak Office czy Skype, i potencjalnie sam się usunie, jeśli te programy nie są w pełni lub prawidłowo zainstalowany. F-Secure spekuluje, że jest to próba zapobiegania wczesnemu wykrywaniu złośliwego oprogramowania.

Jak mogę to wykryć?

Wykrywanie szkodliwego oprogramowania jest dość łatwe i wymaga po prostu otwarcia aplikacji Terminal w folderze / Applications / Utilities / i uruchomienia następujących poleceń:

domyślnie czyta ~ / .MacOSX / environment DYLD_INSERT_LIBRARIES

wartości domyślne read /Applications/Safari.app/Contents/Info LSEnvironment

wartości domyślne to read /Applications/Firefox.app/Contents/Info LSEnvironment

Polecenia te będą czytać plik "Info.plist" niektórych aplikacji docelowych oraz plik "environment.plist" na koncie użytkownika i określać, czy jest dostępna zmienna używana przez złośliwe oprogramowanie do uruchomienia (zwana "DYLD_INSERT_LIBRARIES"). Jeśli zmienna nie występuje, to te trzy polecenia terminala wyprowadzą, że domyślna para "nie istnieje", ale jeśli są obecne, to te polecenia wyprowadzą ścieżkę wskazującą na plik szkodliwego oprogramowania, który powinieneś zobaczyć w terminalu okno.

Oprócz powyższych poleceń, możesz sprawdzić obecność niewidocznych plików .so, które zostały utworzone przez wcześniejsze warianty szkodliwego oprogramowania w udostępnionym katalogu użytkownika, uruchamiając następujące polecenie w terminalu:

ls -la ~ /../ Shared /.*. so

Po uruchomieniu tego polecenia, jeśli widzisz wynik "brak takiego pliku lub katalogu", nie masz tych plików w katalogu współużytkowanym przez użytkownika; jeśli jednak są obecne, zobaczysz je na liście.

Jak mogę go usunąć?

Jeśli po uruchomieniu trzech pierwszych poleceń wykrywania okaże się, że twój system zawiera zmodyfikowane pliki i podejrzewasz, że ma zainstalowane złośliwe oprogramowanie, możesz go usunąć, korzystając z instrukcji ręcznego usuwania F-Secure. Te instrukcje są nieco dogłębne, ale jeśli dokładnie je zastosujesz, powinieneś być w stanie pozbyć się systemu infekcji:

  1. Otwórz Terminal i uruchom następujące polecenia (tak samo jak wyżej):

    wartości domyślne read /Applications/Safari.app/Contents/Info LSEnvironment

    wartości domyślne to read /Applications/Firefox.app/Contents/Info LSEnvironment

    domyślnie czyta ~ / .MacOSX / environment DYLD_INSERT_LIBRARIES

    Po uruchomieniu tych komend zanotuj pełną ścieżkę do pliku, która jest wyprowadzana do okna terminala (może być sparowana z terminem "DYLD_INSERT_LIBRARIES"). Dla każdego polecenia, które wyprowadza ścieżkę pliku (i nie mów, że domena nie istnieje), skopiuj pełną sekcję ścieżki pliku i uruchom następujące polecenie ze ścieżką pliku w miejsce polecenia FILEPATH w poleceniu (skopiuj i wklej to polecenie):

    grep -a -o '__ldpath __ [- ~] *' FILEPATH

  2. Zlokalizuj pliki wymienione w wynikach powyższych poleceń i usuń je. Jeśli nie możesz ich zlokalizować w Finderze, to dla każdego pierwszego typu wpisz "sudo rm" w terminalu, po którym następuje pojedyncza spacja, a następnie użyj kursora myszy, aby wybrać pełną ścieżkę pliku z wyjścia pierwszego polecenia i użyj Command-C następnie Command-V, aby skopiować i wkleić go z powrotem do Terminalu. Następnie naciśnij klawisz Enter, aby wykonać polecenie i usunąć ten plik.

    Zobacz poniższy zrzut ekranu, aby zobaczyć przykład tego, jak powinien wyglądać:

  3. Po usunięciu wszystkich odwołań do plików za pomocą powyższych poleceń "domyślnych" usunęliśmy pliki złośliwego oprogramowania, ale nadal trzeba zresetować zmienione aplikacje i pliki kont, aby to zrobić, uruchom następujące polecenia:

    sudo domyślnie usuwa /Aplikacje/Safari.app/Contents/Info LSEnvironment

    sudo chmod 644 /Aplikacje/Safari.app/Contents/Info.plist

    sudo domyślnie usuwa /Aplikacje/Firefox.app/Contents/Info LSEnvironment

    sudo chmod 644 /Applications/Firefox.app/Contents/Info.plist

    domyślnie usuń ~ / .MacOSX / environment DYLD_INSERT_LIBRARIES

    launchctl unsetenv DYLD_INSERT_LIBRARIES

  4. W Finderze przejdź do menu Go i wybierz Library (przytrzymaj klawisz Option w Lion, aby wyświetlić tę opcję w menu), a następnie otwórz folder LaunchAgents, gdzie powinieneś zobaczyć plik o nazwie "com.java.update" .plist. " Następnie wpisz następujące polecenie w terminalu (uwaga: zmień nazwę polecenia "com.java.update" w poleceniu, aby odzwierciedlić nazwę pliku przed jego przyrostkiem .plist, na przykład "com.adobe.reader", jeśli mieć ten plik):

    defaults read ~ / Library / LaunchAgents / com.java.update ProgramArguments

    Po wykonaniu tego polecenia naciśnij klawisz Enter i zanotuj ścieżkę pliku, która została wyprowadzona do okna terminalu.

    Tak jak wcześniej, zlokalizuj ten plik w Finderze i usuń go, ale jeśli nie możesz tego zrobić, wpisz "sudo rm", a następnie spację, a następnie skopiuj i wklej ścieżkę pliku wyjściowego do polecenia i naciśnij Enter.

  5. Aby usunąć wszystkie ukryte pliki .so znalezione wcześniej, możesz je usunąć, uruchamiając następujące polecenie w Terminalu (pamiętaj, aby skopiować i wkleić to polecenie, ponieważ nie powinno być absolutnie żadnych spacji w ostatnim komponencie, który zawiera symbole i znaki interpunkcyjne ):

    sudo rm ~ /../ Shared /.*. so

    Po zakończeniu tego kroku usuń plik o nazwie "com.java.update.plist" (lub "com.adobe.reader.plist", a powinieneś być gotowy.

ZAKTUALIZOWANO: 4/5/2012, 22.00 - Dodano instrukcje wykrywania i usuwania ukrytych plików .so używanych przez poprzednie warianty złośliwego oprogramowania.


 

Zostaw Swój Komentarz