Czy pliki LNK powinny być załączane w mailach?
Internauci na tyle sta… doświadczeni, by wiedzieć, czym jest rozszerzenie .lnk, pamiętają też czasy, gdy otrzymanie takiego załącznika w mailu oznaczało po prostu błąd nadawcy. Po prostu zagapił się i zamiast załączyć dokument – dodał skrót do niego. O ile kiedyś zdarzało się to często i faktycznie zazwyczaj był to przypadek, jeśli pomyślimy tak teraz – możemy sprowadzić na siebie spore kłopoty.
Decyzja firmy Microsoft o domyślnym blokowaniu makr w aplikacjach pakietu Office dla plików pobieranych z internetu skłoniła twórców szkodliwego oprogramowania do poszukiwań innych skutecznych technik. Nie minęło wiele czasu, gdy zidentyfikowali oni możliwości jakie dają pliki LNK na różnych etapach ataków. Dlatego też w ostatnim roku bardzo wzrosło wykorzystanie plików LNK jako elementu ułatwiający dostarczenie złośliwego programowania na stację roboczą.
Wysoka skuteczność tych rozwiązań może wynikać z łatwości w zmanipulowaniu odbiorcy. Być może także z faktu, iż (do tej pory) analitycy bezpieczeństwa nie dostrzegali potencjału tego mechanizmu w systemie plików, a także sposobu w jaki jest obsługiwany w systemie operacyjnym. Atakujący zauważyli to znacznie szybciej. Obecnie wiele rodzin złośliwego oprogramowania, z samej czołówki krajobrazu zagrożeń, wykorzystuje mechanizm związany z rozszerzeniami .lnk. W tej grupie znajdziemy m.in. Emoteta, Qakbota, czy IcedID.
Czym jest plik LNK?
LNK to rozszerzenie nazwy dla skrótów do plików lokalnych w systemie Windows. Zapewniają one szybki dostęp do plików wykonywalnych (.exe) bez konieczności nawigowania przez użytkowników po pełnej ścieżce programu.
Pliki w formacie Shell Link Binary File Format (.LNK) zawierają metadane dotyczące pliku wykonywalnego, w tym oryginalną ścieżkę do aplikacji docelowej. System Windows używa tych danych do przechowywania odniesień aplikacji do pliku docelowego oraz obsługi uruchamiania aplikacji. Szczegółowe informacje o strukturze pliku i tego jak jest obsługiwany w Windowsie, znajdziecie na stronie Microsoftu.
Badając cyberprzestrzeń często trafiamy na interesujące ataki. Tym razem zaczęło się od pliku 32330.lnk. Nie wyglądał na jeden z popularnych złośliwych programów. W zasadzie wyglądał na link do normalnego dokumentu, a użytkownik, który go uruchamiał, otwierał prawdziwy dokument. Tymczasem analiza narzędziem VirusTotal pokazywała 7 detekcji. Wzbudziło to moje zainteresowanie – bo o ile znajomość technik ataków, pozwala sobie wyobrazić fakt, że .lnk ma czerwone flagi, to już fakt, że jest ich niewiele, jest znacznie bardziej interesujący.
Scenariusz ataku
Zaczyna się od wiadomości mailowej z załącznikiem, trafiającej do potencjalnej ofiary. Wiadomość związana jest procesem zatrudnienia w firmie i opisuje wymagania oraz zasady pracy. Załącznik to plikiem LNK, jednak ofiara tego na pierwszy rzut oka nie widzi. Dla niej załącznik ma rozmiar oraz ikonkę normalnego pliku dokumentu. Uruchamia go więc (można zapisywać, ale można też uruchomić bezpośrednio z programu pocztowego).
Tym samym rozpoczyna działanie pokaźnego skryptu Powershell. Ten w pierwszej kolejności sprawdza, czy w ogóle warto zaatakować danego użytkownika (a dokładniej – wykorzystuje mechanizmy systemowe, by potwierdzić, czy nie znajduje się on w kraju z „listy ochronnej”). W następnym kroku w tle uruchamiany jest złośliwy instalator, pobierający z internetu program, pozwalający na zdalny dostęp atakującego do komputera (RAT – Remote Access Trojan). Jednocześnie użytkownikowi wyświetlany jest dokument RTF nawiązujący do treści maila. Dobry krok ze strony przestępców – kontynuując socjotechniczny wątek zyskują czas zanim ofiara zorientuje się, że coś może być nie tak. Poniższy schemat ilustruje przebieg tego scenariusza.
Analizowany malware został przygotowany w Powershellu oraz .NET. Posiadał kilka mechanizmów ochronnych, które utrudniają automatyczną analizę. Są to m.in.: weryfikacja geolokalizacji komputera, zaciemnianie kodu, usypianie procesów, dzielenie i kompresowanie payloadu. A w istocie jest to malware typu RAT (Remote Access Trojan), który pozwala atakującemu na dostęp do komputera ofiary. Bardzo często jest to zaledwie pierwszy etap w ataku – zdobycie przyczółka w docelowej infrastrukturze.
Jeśli interesuje Cię bardziej szczegółowa analiza – znajdziesz ją tutaj.
Ireneusz Tarnowski
IoC (Indicators of Compromise)
Jak zwiększyć odporność na takie ataki
Patrząc na łańcuch ataku można wskazać kilka elementów, które są w stanie uniemożliwić (lub znacząco utrudnić) jego przeprowadzenie. Są to:
- Zablokowanie maili z załącznikiem w którym jest plik .lnk. Bezpieczne jest założenie a priori, że plik skrótu w załączniku jest złośliwy, nawet bowiem jeśli będzie to pomyłka nadawcy – nieotrzymanie go nie jest związane z żadnym ryzykiem. Oczywiście taka blokada nie będzie w 100% skuteczna, gdyż atakujący często opakowują podejrzane pliki w pliki archiwum (zip, 7z, rar, tgz, iso) i w ten sposób omijają proste zabezpieczenia w systemach pocztowych.
- Wykrywanie plików .lnk, których rozmiar przekracza 255B (rozmiar może zależeć od firmy/odbiorcy, w niektórych sytuacjach może to być 1kB). Plik lnk to de facto wskazanie lokalizacji pliku. Jego rozmiar wynika z długości ścieżki i ew. argumentów wywołania. Opisaną detekcję można prowadzić w momencie tworzenia takiego pliku na dysku (Sysmon, Event ID 11).
- Monitorowanie wykorzystania na dysku katalogów tymczasowych (m.in. $Env::TEMP) i ograniczać zapis w lokalizacjach tymczasowych plików wykonywalnych (dll, exe, bin, cmd, scr).
- Kontrola procesów, nawiązujących ruch sieciowy do adresów zewnętrznych. W tym wypadku pobieranie dwóch plików odbywało się z procesu NetCat26860, który został uruchomiony z Powershella. Ograniczenie procesów, które mogą wywoływać połączenia sieciowe z internetem jest niezwykle skuteczne w wielu atakach i warto przeprowadzić analizę i wykrywać anomalie (tutaj monitoring przy użyciu Sysmona lub innego EDR może być bardzo pomocny).
Dodatkowe informacje o wykorzystaniu plików LNK przez złośliwe oprogramowanie:
https://www.resecurity.com/blog/article/shortcut-based-lnk-attacks-delivering-malicious-code-on-the-rise
https://www.mcafee.com/blogs/other-blogs/mcafee-labs/rise-of-lnk-shortcut-files-malware/
https://thehackernews.com/2023/05/north-koreas-scarcruft-deploys-rokrat.html
https://www.trendmicro.com/pl_pl/research/17/e/rising-trend-attackers-using-lnk-files-download-malware.html