W ciągu ostatnich kilku dni zaobserwowaliśmy kampanię atakującą tylko polskich użytkowników Internetu za pomocą wiadomości e-mail zawierających złośliwe oprogramowanie. Pobiera ono bota o nazwie Betabot, który następnie przekazuje cyberprzestępcy pełną kontrolę nad komputerem ofiary. Celem atakującego jest zdobycie danych oraz zainstalowanie dodatkowych rodzajów malware’u, które potrafią na przykład podmienić numer rachunku bankowego na stronie bankowości elektronicznej. Poniżej znajduje się opis szczegółów kampanii, a także użytego złośliwego oprogramowania.
Wiadomość e-mail
Infekcja rozpoczyna się od otrzymania wiadomości e-mail o temacie:
Przedsadowe Wezwanie do zaplaty z dnia [data]
Przy czym wartość [data]
jest uzupełniania zgodnie z aktualną datą. Mail zawiera logo oraz adres jednej z kancelarii prawniczych w Poznaniu. Do wiadomości załączone jest archiwum zip o nazwie takiej samej jak temat wiadomości e-mail. W tym archiwum znajduje się plik o rozszerzeniu .pif
. System Windows traktuje pliki z takim rozszerzeniem jak zwykłe pliki wykonywalne. Przewagą tego rozszerzenia jest fakt, że jest niewidoczne nawet po włączeniu wyświetlania rozszerzeń plików znanych typów. Dlatego użytkownicy mogą być przekonani, że otwierają plik innego rodzaju, w tym przypadku zwykły dokument PDF.
Złośliwe oprogramowanie etapu I (dropper)
Pierwszy program, który uruchamia się po otwarciu załącznika to dropper napisany w języku .NET. Jego zadaniem jest pobranie właściwego złośliwego oprogramowania z określonej domeny. Jeśli nie może znaleźć tego pliku to próbuje połączyć się z inną domeną. Dodatkową funkcjonalnością jest połączenie się ze stroną z3s.pl (innym adresem Zaufanej Trzeciej Strony). Połączenie jest realizowane albo przez WebProxy http://dstats.net/download/ albo bezpośrednio z uruchamianego procesu przeglądarki. Poniżej znajduje się najbardziej istotny fragment kodu droppera.
Pobrany plik jest następnie zapisywany pod losową nazwą w katalogu tymczasowym i uruchamiany.
Złośliwe oprogramowanie etapu II (packer)
Sam kod bota jest opakowany w dwie warstwy. Pierwsza to skrypt w języku AutoIt, który deszyfruje plik wykonywalny (za pomocą RC4), a następnie korzysta z techniki process hollowing, aby go uruchomić. Technika ta polega na uruchomieniu „znanego” procesu – w tym przypadku WerFault.exe
(Windows Error Reporting Service) – w trybie zawieszonym. Następnie kod procesu w pamięci jest zamieniany z innym kodem złośliwego oprogramowania, a proces jest uruchamiany normalnie. Powoduje to, że na liście procesów taki program wygląda jak zwykły program uruchomiony przez system Windows, a w rzeczywistości jest to złośliwe oprogramowanie.
Dodatkowym zadaniem skryptu jest zapewnienie obecności złośliwego oprogramowania nawet po restarcie systemu przez wpisanie odpowiedniego klucza rejestru odpowiadającego za autostart.
Złośliwe oprogramowanie etapu III – Betabot
Betabot jest komercyjnie dostępnym złośliwym oprogramowaniem, które jest obecne na rynku od 2013 roku. Poniżej znajduje się reklama tego oprogramowania na jednym z forów, gdzie był sprzedawany za 120 dolarów.
Betabot posiada wiele możliwości, między innymi:
- Wykonywanie ataków DDoS: slowloris, UDP flood czy połączenia HTTP GET.
- Wykradanie haseł wpisywanych do oprogramowania PuTTY.
- Wykradanie haseł zapisanych w klientach FTP.
- Wykradanie haseł zapisanych w przeglądarkach: Internet Explorer, Firefox (nawet w wersji Tor Browser), Chrome.
- Wykradanie danych do logowania z programów: Runescape, Minecraft, League of Legends, Skype, World of Warcraft, Steam.
- Przechwytywanie danych wysyłanych żądaniami POST (np. nazwa użytkownika i hasło do systemów zarządzania hostingiem czy interfejsów pocztowych).
- Wykradanie zapisanych plików cookie.
Mimo tak bogatej listy funkcji, niektórzy użytkownicy forum, na którym pojawiła się powyższa reklama nie są przekonani do jakości tego złośliwego oprogramowania, co widać na zrzucie ekranu poniżej.
Betabot zawiera też wiele cech, które sprawiają, że staje się trudny zarówno w ręcznej jak i automatycznej analizie:
- Sprawdzenie czy proces jest debugowany za pomocą sprawdzenia odpowiedniego bajtu bloku PEB.
- Sprawdzenie czy nazwa użytkownika jest krótsza niż pięć znaków.
- Sprawdzenie kilku znanych kluczy systemu Windows, należących do systemów analizy złośliwego oprogramowania (funkcja zaprezentowana poniżej).
- Sprawdzenie czy nazwa komputera nie zaczyna się od
sandbox
- Za pomocą ustawienia odpowiednich wpisów ACL (Access Control List) jest w stanie zapobiec zabiciu procesu, zmianie wpisów w rejestrze czy debuggowaniu.
- Zapobieganie debugowaniu przez nadpisanie pierwszej instrukcji funkcji DbgBreakPoint instrukcją NOP.
- Wykrywanie wielu rozwiązań antywirusowych / antymalware.
- Przekierowanie ruchu DNS za pomocą hookowania funkcji WinAPI (np.
DnsQuery
).
Panel bota jest dodatkowo zaciemniony za pomocą komercyjnie dostępnego narzędzia IonCube, co powoduje, że analiza kodu panelu staje się bardzo trudna. Celem atakującego z pewnością były dane wysyłane za pomocą żądań POST (loginy i hasła) jak i przeprowadzanie ataków DDoS.
Podsumowanie
Ruch do serwera C&C złośliwego oprogramowania jest już przekierowany do naszego serwera sinkhole i dane dotyczące infekcji są za darmo rozpowszechniane za pomocą platformy n6. W ciągu jednego dnia zarejestrowaliśmy połączenia z ponad 500 różnych adresów IP. Należy zauważyć, że znaczący wpływ na ograniczenie infekcji mogła mieć nasza szybka reakcja na zagrożenie. Wszystkich administratorów zapraszamy do uczestnictwa w n6, aby otrzymywali informacje o tym oraz wielu innych zagrożeniach w ich sieciach.
W serwisie VirusTotal znajduje się rozpakowana wersja bota, który przeanalizowaliśmy.