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
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 .
- ^ 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 .
- ^ „Oprogramowanie ransomware szyfrujące zagraża użytkownikom Linuksa” . dr Web . 6 listopada 2015 . Źródło 2015-11-16 .
- ^ 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 .
- ^ a b "Linux.Encoder.1" . dr Web . 5 listopada 2015 . Źródło 2015-11-16 .
- ^ Rubin, Netanel (20 kwietnia 2015). „Analiza luki w zabezpieczeniach Magento” . Blog Check Pointa . Źródło 2015-11-16 .
- ^ „Oprogramowanie ransomware atakuje teraz Twoje witryny internetowe” . Krebsa o bezpieczeństwie . 15 listopada 2015 . Źródło 2015-11-16 .