03.04.2014 | 07:20

Adam Haertle

CryptorBit, czyli polski ślad w kodzie źródłowym ransomware

Wśród licznych wersji oprogramowania szyfrującego pliki użytkowników bez ich wiedzy i żądającego okupu za ich odszyfrowanie trafiliśmy na ślad jednej z odmian, której autorem prawdopodobnie może być nasz rodak. Nie jest to jedyny błąd, jaki popełnił.

CryptorBit, bo tak nazywa się to złośliwe oprogramowanie, pojawił się w sieci w okolicy początku grudnia 2013. Nie jest ani najpopularniejszy, ani najbardziej złośliwy, jest z nim jednak związany ciekawy błąd, który wskazuje na jego polskie pochodzenie.

Pliki zaszyfrowane, ale częściowo do odzyskania

Osoby zarażone CryptorBitem mogą poznać, że padły ofiarą właśnie tego programu, po tym, ze w każdym folderze komputera, w którym do tej pory były ich dokumenty, pojawiają się dwa nowe pliki: HowDecrypt.txt oraz HowDecrypt.gif. Oba zawierają instrukcję przekazania okupu.

Komunikat CryptoBitu (źródło: Bleeping Computer)

Komunikat CryptoBitu (źródło: Bleeping Computer)

Program szyfruje pliki w dość specyficzny sposób, umożliwiając ich częściowe odzyskanie. Najpierw wycina pierwsze 512 bajtów każdego pliku, następnie je szyfruje i dokleja na końcu pliku po czym w ich miejsce na początku wstawia błędny nagłówek. Powoduje to, że pliki „przestają się otwierać”, ponieważ programy je obsługujące nie rozpoznają prawidłowo ich formatu. Zaszyfrowanego oryginalnego nagłówka nie da się odzyskać (a przynajmniej nie bez kontaktu z przestępcą), lecz część formatów plików w nagłówku zawiera informacje nie wpływające na treść danych, zatem możliwe jest przywrócenie pliku do życia. W ten sposób obecnie można odzyskać pliki JPG, PST, MP3, PDF, DOC, XLS, XLSX, PPTX, oraz DOCX. Na forum Bleeping Computer opublikowano odpowiednie narzędzie oraz instrukcję, jak odzyskać inne pliki z różnych kopii bezpieczeństwa.

Polski akcent w kodzie źródłowym

Jak widać na powyższym obrazku, panel umożliwiający przekazanie okupu autorowi oprogramowania znajduje się w sieci Tor, pod adresem 4sfxctgp53imlvzk.onion. Najciekawszy jest jednak prawdopodobny błąd w konfiguracji reguły .htaccess na tym serwerze, powodujący, że odwołanie do dowolnego nieistniejącego pliku umożliwia pobranie kodu źródłowego głównej strony. W kodzie znajduje się login i hasło do bazy danych panelu, a jeszcze niedawno na serwerze dostępny był interfejs umożliwiający przeglądanie bazy danych.

Pierwszy ślad tego odkrycia pochodzi z 20 grudnia 2013, kiedy to John Carroll opublikował link do wyciągniętego kodu źródłowego a krótko potem również podsumowanie przychodów przestępców (zarobili w grudniu ok. 1 BTC). Wtedy jednak kod źródłowy nie zawierał ciekawego komentarza. Pojawia się on dopiero w artykule innego autora z 20 marca tego roku. Interesujący fragment wygląda tak:

session_start();
define('DBHOST', 'localhost');
define('DBUSER', 'site');
define('DBPASS', 'Be6mybCWhpFpgG4u');//Dostep do sql zamiana!!!

Wygląda zatem na to, że autorem kodu jest nasz rodak lub ktoś, kto chciał zmylić tropy polskim komentarzem. Niektóre teksty w kodzie sugerują, że angielski nie był językiem ojczystym autora, np. „Message was send” lub „Message must contains”.

Dostęp do bazy

Kilka dni później innemu blogerowi udało się trafić na ten sam błąd serwera, jednak poszedł jeszcze krok dalej i znalazł dostępny folder /mysql, a w nim oprogramowanie o nazwie Adminer, umożliwiające zarządzanie bazą danych przez stronę www.

Panel administracyjny (źródło: TGHC)

Panel administracyjny (źródło: TGHC)

Jak widać na powyższym zrzucie ekranu przestępcy nie muszą się opędzać od płacących klientów, jednak ktoś ciągle daje się naciągnąć na ułamek BTC. Możliwe także, że baza jest często czyszczona, dlatego brak w niej większej ilości wpisów. Krótko po tym, jak bloger zajrzał do serwisu, dostęp do folderu /mysql został zablokowany. Ciągle jednak działa pobieranie kodu źródłowego strony głównej – można sprawdzić samemu, czy uległ modyfikacji.

Blogerowi udało się także zapytać bazę o nazwę hosta – brzmi ona DS791732. Moze kojarzycie, w jakiej serwerowni tak nazywają maszyny?

Na forum Bleeping Computer poruszono jeszcze jeden ciekawy wątek – mimo intensywnych poszukiwań do tej pory nie trafiono na ślad metody infekcji komputerów. Jedna z teorii mówi o tym, że złośliwy program może być instalowany ręcznie, po przejęciu kontroli nad komputerem poprzez słabo zabezpieczony zdalny pulpit.

Podsumowanie

Jak widać autor CryptorBita popełnił kilka błędów – choć trochę mu jeszcze brakuje do autora BitCrypta, który na skutek prostego błędu arytmetycznego umożliwił swoim ofiarom własnoręczne odszyfrowanie wszystkich plików. Teraz pozostaje nam tylko czekać, aż ktoś znajdzie kolejną podatność na serwerze przestępcy i prześle nam jego dane.

Na wątek naprowadził nas wpis na blogu Pomiędzy bitami.

Powrót

Komentarze

  • 2014.04.03 09:52 Marcin

    Sądze, że autor CryptorBit nie jest Polakiem. Mógł natomiast odkupić binarke tego malwaru wraz z instrukcjami konfiguracji m.in bazy danych.

    Odpowiedz
  • 2014.04.03 10:16 Mateusz

    DS – kojarzy mi się z Hetznerem…

    Odpowiedz
  • 2014.04.03 12:38 jasz

    Przeguglanie zbliżonych numerów do DS791732 wskazało np. na:
    https://www.google.pl/search?q=DS791724
    idąc dalej:
    http://nslist.net/ds791724.clientshostname.com/
    oraz
    http://www.who.is/whois/clientshostname.com/

    w efekcie nasze DS791732 wskazuje mi na IP=66.220.7.154
    może tym tropem?

    Odpowiedz
    • 2014.04.04 00:53 zuo

      Dobry trop.
      Po pierwsze nazwa o cyfrę wyżej jak i niżej nie istnieje, a DS791732 idealnie się rozwiązuje (raczej mało przypadkowe)
      Po drugie to jest także Debian. Informacja z nginxa hostującego stronę w sieci TOR:
      X-Powered-By: PHP/5.4.4-14+deb7u5
      Server: nginx/1.2.1

      Wersja SSH na domniemanym hoscie:

      OpenSSH 6.0p1 Debian 4 (protocol 2.0)

      A tu lista softu dostępnego w Debianie Wheezy (7.0) – https://packages.debian.org/stable/allpackages – wyjątkowo wszystko się pokrywa, łącznie z nginxem ;-)

      Ostatnim testem było by chwilowe wycięcie dostępu do internetu dla znanego IP i sprawdzenie czy strona w sieci TOR nadal się ładuje. Jest spora szansa, że nie.

      Swoją drogą gratuluję wytrwałości w poszukiwaniu podobnie brzmiących nazw hostów. Ręczne szukanie było nużące i nie zwracało oczekiwanych rezultatów po kilkudziesięciu próbach, a podejście do automatyzacji tego zadania poprzez użycie zakresów (DS000000..999999) powodowało tylko problemy z google (swoją drogą polecam wpisać u siebie :-)).

      Z innych rzeczy – skipfish nie był w stanie znaleźć nowego położenia panelu, ostatecznie w połowie nocy wykładając instancję TOR’a (jakby ktoś chciał próbować, to można, ale z limitami req/s).

      Pozdrowienia dla innych wytrwałych poszukiwaczy :-)

      Odpowiedz
  • 2014.04.03 17:22 anonim641

    haha, jak zwykle.
    błędna implementacja captchy – po wykonaniu zapytania, zmienna nie jest zerowana, więc wystarczy raz wypełnić captche, a potem można wysyłać w nieskończoność (o ile nie odwołamy się do pliku generującego captche).

    Odpowiedz
    • 2014.04.04 10:34 chesteroni

      Właśnie nie błędna – CAPTCHA ma rozróżnić człowieka od bota i nie utrudniać życia bardziej niż to niezbędne.
      Blokada automatu skanującego powinna być w niższej warstwie niż 7 :)

      Odpowiedz

Zostaw odpowiedź do zuo

Jeśli chcesz zwrócić uwagę na literówkę lub inny błąd techniczny, zapraszamy do formularza kontaktowego. Reagujemy równie szybko.

CryptorBit, czyli polski ślad w kodzie źródłowym ransomware

Komentarze