Linux.Encoder

Linux.Encoder (znany również jako ELF/Filecoder.A i Trojan.Linux.Ransom.A ) jest uważany za pierwszego trojana ransomware atakującego komputery z systemem Linux . Istnieją dodatkowe warianty tego trojana, które atakują inne systemy uniksowe i uniksopodobne. , odkryte 5 listopada 2015 r. przez Dr. Web , zaatakowało co najmniej dziesiątki użytkowników Linuksa.

Linux.Encoder.1 jest zdalnie uruchamiany na komputerze ofiary przy użyciu luki w Magento , popularnej aplikacji do zarządzania treścią . Po aktywacji złośliwe oprogramowanie szyfruje określone typy plików przechowywanych na zamontowanych dyskach lokalnych i sieciowych przy użyciu kryptografii klucza publicznego AES i RSA , przy czym klucz prywatny jest przechowywany tylko na serwerach kontrolnych złośliwego oprogramowania. Szkodliwe oprogramowanie przechowuje następnie w każdym katalogu plik o nazwie „readme_to_decrypt.txt”, zawierający wiadomość, która oferuje odszyfrowanie danych, jeśli płatność (poprzez Bitcoin ) jest zrobione. W porównaniu z innym oprogramowaniem ransomware, takim jak CryptoLocker , to złośliwe oprogramowanie nie określa terminu zapłaty, a okup nie wzrasta z upływem czasu.

Odkrycie

5 listopada 2015 r. Dr. Web , rosyjska firma zajmująca się zwalczaniem złośliwego oprogramowania, dodała do swojej bazy danych wirusów Linux.Encoder.1. Następnego dnia firma opublikowała opis złośliwego oprogramowania. To ransomware jest napisane w C przy użyciu PolarSSL .

Operacja

Propagacja

Według Bitdefender Labs najczęstszym wektorem infekcji jest luka w Magento , oprogramowaniu koszyka na zakupy. CheckPoint zgłosił tę lukę w kwietniu 2015 r. Po tym zgłoszeniu Magento wydało poprawkę. Jednak wiele małych witryn handlu elektronicznego nie zastosowało tej krytycznej aktualizacji. Host z systemem Linux może również zostać zaatakowany przy użyciu innych exploitów.

Szyfrowanie plików

Zaszyfrowane pliki

Uruchomiony jako root program ładuje do pamięci dwa pliki zawierające żądania atakujących:

  • ./readme.crypto
  • ./indeks.krypto

Następnie ransomware otrzymuje publiczny klucz RSA. Złośliwe oprogramowanie uruchomi się następnie jako demon i usunie wszystkie swoje oryginalne pliki. Trojan będzie szyfrował pliki z rozszerzeniami: ".php", ".html", ".tar", ".gz", ".sql", ".js", ".css", ".txt" ". pdf", ".tgz", ".war", ".jar", ".java", ".class", ".ruby", ".rar" ".zip", ".db", ".7z ", ".doc", ".pdf", ".xls", ".properties", ".xml" ".jpg", ".jpeg", ".png", ".gif", ".mov" , ".avi", ".wmv", ".mp3" ".mp4", ".wma", ".aac", ".wav", ".pem", ".pub", ".docx", ".apk" ".exe", ".dll", ".tpl", ".psd", ".asp", ".phtml", ".aspx", ".csv".

Złośliwy program szyfruje pliki z wyżej wymienionymi rozszerzeniami w następujących katalogach:

  • /dom
  • /źródło
  • /var/lib/mysql
  • /var/www
  • /etc/nginx
  • /etc/apache2
  • /var/log

Następnie złośliwe oprogramowanie zaszyfruje wszystkie pliki z katalogów o nazwie zaczynającej się od:

  • public_html
  • www
  • Aplikacja internetowa
  • kopia zapasowa
  • .git
  • .svn

Program nie będzie szyfrował plików w następujących katalogach

  • /
  • /źródło/
  • .ssh
  • /usr/bin
  • /kosz
  • /etc/ssh
Zawartość pliku „readme_for_decrypt.txt” na serwerze Linux.

Następnie program wygeneruje plik o nazwie „readme_for_decryption.txt” w każdym folderze. Ten plik zawiera adres Bitcoin wygenerowany specjalnie dla okupu i strony internetowej do pobrania narzędzia deszyfrującego hostowanego na . z cebulą .

Metoda szyfrowania

Podobnie jak inne ransomware, Linux.Encoder.1 używa mieszanych algorytmów szyfrowania do szyfrowania danych. Zaczyna się od wygenerowania klucza AES na urządzeniu ofiary i szyfruje wszystkie poprzednie pliki przy użyciu AES - CBC -128. Następnie RSA jest dodawany na początku każdego zaszyfrowanego pliku, z oryginalnymi uprawnieniami do pliku i IV używanym przez algorytm AES. Wszystkie zaszyfrowane pliki mają dodane na końcu nazwy pliku „.encrypted”.

Program wykorzystuje funkcję libc rand() ze znacznikiem czasu w momencie szyfrowania jako ziarno do generowania IV i kluczy.

Deszyfrowanie

Po dokonaniu płatności na rzecz cyberprzestępcy ofiara może pobrać skrypt PHP na swój komputer. Ten skrypt użyje klucza prywatnego RSA do odzyskania symetrycznego klucza AES i odszyfrowania wszystkich plików z rozszerzeniem „.encrypted”. Wraz z odszyfrowywaniem plików narzędzie deszyfrujące usunie również każdy plik „readme_for_decryption.txt” na dysku twardym.

Odzyskiwanie plików

Ze względu na użycie sygnatury czasowej jako materiału siewnego do tworzenia kluczy i IV do szyfrowania, odszyfrowanie plików zaszyfrowanych przez oprogramowanie ransomware jest trywialne, biorąc pod uwagę, że oryginalne informacje o sygnaturze czasowej pozostają nienaruszone. Badacze z Bitdefender Labs odkryli i wykorzystali tę słabość do odzyskania plików bez konieczności płacenia przestępcom.

W innych systemach uniksowych

  • Linux.Encoder.1 został przekompilowany na Maca pod nazwą KeRanger .
  • Istnieje wersja, która infekuje FreeBSD .
  1. ^ Bisson, David (10 listopada 2015). „Pliki witryny zaszyfrowane przez ransomware Linux.Encoder.1? Jest teraz bezpłatna poprawka” . Grahama Cluleya . Źródło 2015-11-16 .
  2. ^ „Oprogramowanie ransomware szyfrujące zagraża użytkownikom Linuksa” . dr Web . 6 listopada 2015 . Źródło 2015-11-16 .
  3. ^ a b c „Debiut Linux Ransomware kończy się niepowodzeniem na przewidywalnym kluczu szyfrującym” . Laboratoria Bitdefendera . 10 listopada 2015 . Źródło 2015-11-16 .
  4. ^ a b "Linux.Encoder.1" . dr Web . 5 listopada 2015 . Źródło 2015-11-16 .
  5. ^ Rubin, Netanel (20 kwietnia 2015). „Analiza luki w zabezpieczeniach Magento” . Blog Check Pointa . Źródło 2015-11-16 .
  6. ^ „Oprogramowanie ransomware atakuje teraz Twoje witryny internetowe” . Krebsa o bezpieczeństwie . 15 listopada 2015 . Źródło 2015-11-16 .