W jaki sposób odzyskać zaszyfrowane pliki przez TeslaCrypt? Skorzystaj z TeslaDecoder

22 lutego, 2016

Niedawno odkryty błąd w sposobie przechowywania kluczy wygenerowanych za pomocą symetrycznego algorytmu AES o długości klucza 256 bitów wykorzystywanego przez krypto-ransomware TeslaCrypt do szyfrowania plików, może pomóc w ich odzyskaniu. W jaki sposób?

TeslaCrypt w wersji od 0.3.4a do 2.2.0 szyfruje pliki algorytmem AES, który generuje jeden klucz, za pomocą którego szyfruje i jednocześnie może odszyfrować te same pliki. To zupełnie inaczej niż np. CryptoLocker 3.0, który dodatkowo klucz prywatny niezbędny do deszyfracji generowany jest za pomocą asymetrycznego algorytmu RSA-2048 i przechowywany jest na serwerze cyberprzestępcy. W przypadku krypto-ransomware TeslaCrypt w wersjach 2.2.0 i niższych, wszystkie informacje niezbędne do odzyskania danych zapisywane są lokalnie na dysku użytkownika.

Za każdym razem, kiedy TeslaCrypt szyfruje pliki, co jakiś czas generuje nowy klucz, szyfruje nim dokumenty i zapisuje w nich te informacje. Problem w tym, że twórcy malware zapisują te klucze w każdym zaszyfrowanego pliku, więc musieli opracować metodę na odpowiednio skuteczne zabezpieczenie klucza przed jego wydobyciem i odszyfrowaniem danych. Aby chronić taki klucz, autorzy TeslaCrypt użyli innego algorytmu do zaszyfrowania go generując drugi, a następnie przechowywano ten klucz w każdym zaszyfrowanym pliku. Oznacza to, że część plików mogła być odszyfrowana innym kluczem niż została zaszyfrowana.

Jak udało się opracować narzędzie TeslaDecoder?

Niestety, ale twórcy TeslaCrypt nie przewidzieli, że zaszyfrowany klucz nie oprze się mocy obliczeniowej współczesnych wielordzeniowych procesorów. Wykorzystanie specjalnych programów, pozwoliło w procesie faktoryzacji uzyskać liczby pierwsze (z tak dużej liczby 2^256) potrzebne do dekrypcji. To właśnie zwróciło uwagę niezależnych ekspertów, którzy opracowali narzędzie TeslaDecoder, dzięki któremu odzyskanie plików staje się wreszcie możliwe. Jednak na wstępnie zaznaczamy, że metoda ta nie zawsze działa i jest skierowana tylko do pewnego grona użytkowników, którzy padli ofiarą TeslaCrypt w wersji od 0.3.4a do 2.2.0.

Kilka słów o TeslaCrypt

TeslaCrypt w wersji 3.0 jest jednym z nowszych wariantów szkodnika, które są powszechne wykorzystywane przez przestępców do nabijania swojego portfela walutą BTC. Jego historia zaczyna się na początku roku 2015 (pierwsze próbki CryptoLocker’a pochodzą ze stycznia 2013 roku) i chociaż pierwsza próbka wrzucona do VirusTotal jest oznaczona datą 2014-11-18, to pierwsze masowe infekcje zauważono dopiero w marcu 2015 roku.

Najnowsza wersja TeslaCrypt 3.0 używa symetrycznego algorytmu AES-256 do szyfrowania plików, ale w odróżnieniu od starszych odpowiedników, pliki są dodatkowo szyfrowane asymetrycznym algorytmem RSA-2048 za pomocą powiązanych ze sobą pary dwóch kluczy (publicznego i prywatnego), które są niezbędne do odszyfrowania. Klucz publiczny szyfruje pliki lokalnie i aby je odzyskać, należy uzyskać dostęp do klucza prywatnego, który w odróżnieniu od TeslaCrypt poniżej wersji 3.0 jest przechowywany na serwerze pod kontrolą przestępcy. Po określonym czasie – zwykle po 72 godzinach, klucz jest automatycznie usuwany – o ile ofiara nie zapłaci okupu, a dane są bezpowrotnie utracone.

Najczęstszym wektorem dystrybucji TeslaCrypt są wiadomości typu spam, które zawierają zainfekowane załączniki i złośliwe strony internetowe. Szczególnie groźne są te drugie, które za pomocą exploit packów (np. Angler Exploit Kit) wykorzystując lukę w zabezpieczeniach automatycznie wstrzykują swój payload (udostępniając przestępcy np. wiersz poleceń atakowanego systemu), który po uruchomieniu pobiera docelowego wirusa na dysk ofiary i uruchamia go, szyfruje pliki oraz usuwa punkty przywracania systemu.

Zazwyczaj (w nowszych wariantach krypto-ransomware) cyberprzestępcy, aby zachować swoją anonimowość wykorzystują sieć Tor, za którym schowany jest serwer kontrolno-zarządzający, z którym to komunikuje się krypto-ransomware. Wariant TeslaCrypt w wersji od 0.3.4a do 2.2.0 nie robi tego i nie wykorzystuje drugiego algorytmu RSA do generowania pary kluczy, którymi szyfruje pliki. Dlatego też ekspertom udało się opracować metodę umożliwiającą odzyskanie plików.

W jaki sposób działa TeslaCrypt?

Krótkie przedstawienie możliwości TeslaCrypt przez AVLab znajduje się na poniższym wideo. Proszę zwrócić uwagę, że TeslaCrypt wykorzystuje znaną grafikę z krypto-ransomware CryptoLocker. Stąd też zagrożenia te są często mylone, a różne warianty wirusów, które szyfrują pliki są niesłusznie wrzucane do jednego worka pod nazwą CryptoLocker. To wielki błąd.

SHA-256 wykorzystanego w wideo: 3372c1edab46837f1e973164fa2d726c5c5e17bcb888828ccd7c4dfcc234a370

TeslaCrypt szyfruje pliki o następujących rozszerzeniach: 

.sql, .mp4, .7z, .rar, .m4a, .wma, .avi, .wmv, .csv, .d3dbsp, .zip, .sie, .sum, .ibank, .t13, .t12, .qdf, .gdb, .tax, .pkpass, .bc6, .bc7, .bkp, .qic, .bkf, .sidn, .sidd, .mddata, .itl, .itdb, .icxs, .hvpl, .hplg, .hkdb, .mdbackup, .syncdb, .gho, .cas, .svg, .map, .wmo, .itm, .sb, .fos, .mov, .vdf, .ztmp, .sis, .sid, .ncf, .menu, .layout, .dmp, .blob, .esm, .vcf, .vtf, .dazip, .fpk, .mlx, .kf, .iwd, .vpk, .tor, .psk, .rim, .w3x, .fsh, .ntl, .arch00, .lvl, .snx, .cfr, .ff, .vpp_pc, .lrf, .m2, .mcmeta, .vfs0, .mpqge, .kdb, .db0, .dba, .rofl, .hkx, .bar, .upk, .das, .iwi, .litemod, .asset, .forge, .ltx, .bsa, .apk, .re4, .sav, .lbf, .slm, .bik, .epk, .rgss3a, .pak, .big, wallet, .wotreplay, .xxx, .desc, .py, .m3u, .flv, .js, .css, .rb, .png, .jpeg, .txt, .p7c, .p7b, .p12, .pfx, .pem, .crt, .cer, .der, .x3f, .srw, .pef, .ptx, .r3d, .rw2, .rwl, .raw, .raf, .orf, .nrw, .mrwref, .mef, .erf, .kdc, .dcr, .cr2, .crw, .bay, .sr2, .srf, .arw, .3fr, .dng, .jpe, .jpg, .cdr, .indd, .ai, .eps, .pdf, .pdd, .psd, .dbf, .mdf, .wb2, .rtf, .wpd, .dxg, .xf, .dwg, .pst, .accdb, .mdb, .pptm, .pptx, .ppt, .xlk, .xlsb, .xlsm, .xlsx, .xls, .wps, .docm, .docx, .doc, .odb, .odc, .odm, .odp, .ods, .odt

Powyższe pliki po zaszyfrowaniu i w zależności od wariantu TeslaCrypt mogą przybrać formę podwójnego rozszerzenia (np. tapeta.jpg.micro lub dokument.pdf.ecc):

.xxx, .ttt, .abcor, .micro, .ecc, .ezz, .exx, .xyz, .zzz, .aaa, .abc, .ccc, .vvv

Za pomocą opracowanego narzędzia TeslaDecrypter możliwe jest odzyskanie plików o następujących rozszerzeniach:

ECC, .EZZ, .EXX, .XYZ, .ZZZ, .AAA, .ABC, .CCC, and .VVV

Plików za pomocą tego narzędzia nie da się odzyskać, jeśli mają rozszerzenie:

.xxx, .ttt, .micro

TeslaDecoder – krótki poradnik jak odszyfrować pliki

Przed jakąkolwiek próbą odzyskania danych zalecamy wykonanie kopii zapasowej plików, na wypadek, gdyby coś poszło nie tak. Poza tym nie jest wykluczone, że w przyszłości zostaną opracowane inne narzędzia, które pozwolą odzyskać zaszyfrowane pliki.

1. Program TeslaDecoder należy pobrać ze strony http://download.bleepingcomputer.com/BloodDolly/TeslaDecoder.zip wypakować oraz uruchomić aplikację TeslaDecoder.exe. W środku znajdują się dwa inne programy – TeslaViewer.exe i TeslaRefactor.exe, które będą później potrzebne. W folderze jest także plik HTML ze szczegółową instrukcją.

Jeszcze jedna uwaga: w odzyskaniu danych kluczowy jest plik key.dat, który tworzony jest przez krypto-ransomware w ukrytej lokalizacji dla Windows Vista i nowszych systemów: C:UserstestAppDataRoaming (lub storage.bin, w zależności od wariantu TeslaCrypt), który przechowuje informacje o kluczu wygenerowanym przez AES-256 wykorzystanym do szyfrowania. 

TeslaDecoder 00

2. Uruchom TeslaDecoder.exe 

TeslaDecoder 1

Jeśli na dysku nadal znajduje się plik key.dat lub storage.bin, wystarczy tylko kliknąć w Decrypt Folder lub Decrypt All. Pierwsza opcja pozwala wskazać folder z zaszyfrowanymi plikami. Druga odzyska pliki ze wszystkich partycji.

TeslaDecoder 2

Wybranie opcji TAK spowoduje, że pliki zostaną odzyskane, a ich wersje zaszyfrowane permanentnie usunięte. Opcja NIE umożliwia zachowanie plików zaszyfrowanych.

Poniższe wideo przedstawia, jak łatwo jest odzyskać pliki, jeśli plik key.dat znajduje się na dysku:

Nie mam pliku key.day ani storage.bin, co robić?

Jeśli pliki key.dat oraz storage.bin zostały w jakiś sposób utracone np. na skutek przeskanowania komputera skanerem antywirusowym – jeszcze nie wszystko stracone.

1. Otwórz plik TeslaViewer.exe oraz wskaż lokalizację dowolnego zaszyfrowanego pliku.

TeslaDecoder 3

2. Aby skopiować ciąg znaków z PrivateKeyBT, zapisz dane do pliku TXT klikając poniżej w Create work.txt

TeslaDecoder 4

3. Skopiuj liczbę przedstawioną dziesiętnie z linii nr 7 – oczywiście bez słowa „dec” (wyłącznie cyfry).

4. Z takiej liczby należy w procesie faktoryzacji odszukać liczby pierwsze. Otwórz stronę http://www.factordb.com oraz wklej ciąg cyfr z kroku 3 i naciśnij buton „Factorize!”

fully factored

Jeśli w wyniku w kolumnie status widnieje szesnastkowo FF – jesteś w domu. Potrzebujesz jeszcze skopiować liczby podkreślone wyżej na niebiesko. Czasami wynik ten jest skrócony i kończy się np. na 1884516739…69<146> ->klikając w <146> rozwiniesz dalszą część wyniku.

Jeśli w kolumnie status otrzymałeś CF – przejdź do kroku 7.

5. Teraz z pozyskanego z kroku nr 1 klucza musisz odzyskać klucz niezbędny do odszyfrowania plików. Otwórz TeslaRefactor.exe
found private key

  • Jeśli w kolumnie status otrzymany wynik to CF, skopiuj liczby pierwsze z kroku 7.
  • Jeśli miałeś status FF, skopiuj liczby pierwsze z kroku nr 4.

Wklej liczby pierwsze w duże pole tekstowe. Następnie z pliku works.txt utworzonego w kroku nr 2 wklej ciąg znaków z PublicKeyBC (linia 12) w pole „Public key (hex)”. Teraz kliknij w „Find private key”. Poniższe pola zostaną wypełnione. Skopiuj prywatny klucz zaznaczony czerwoną strzałką.

6. Uruchom TeslaDecoder.exe jako administrator oraz klikając w „Set key” wklej swój klucz zaznaczony czerwoną strzałką w kroku nr 5.

tesladecoder

set key

Klikając w „Set key” pozwolisz programowi przeszukać dysk w poszukiwaniu zaszyfrowanych plików. Teraz wróć do kroku 2 nie zamykając TeslaDecoder.exe i ciesz się z odzyskanych plików! 

7. Niestety, ale proces faktoryzacji musisz wykonać za pomocą innego narzędzia. Pobierz program http://download.bleepingcomputer.com/td/yafu.zip i wypakuj archiwum. W środku znajdziesz RunYafu.exe – uruchom aplikację. 

yafu

Kliknij w „Tune Yafu”. Dostosuje to działanie programu do Twojej konfiguracji sprzętowej. Yafu uruchomi teraz automatycznie plik tunex64.bat lub tunex86.bat – w zależności od systemu operacyjnego. Poczekaj na wykonanie operacji. Konsola CMD zamknie się sama po kilku lub kilkunastu minutach – jest to zależne od dysku SSD/HDD i mocy obliczeniowej. Na maszynie z dyskiem SSD, procesorem 6-rdzeniowym i 8GB pamięci RAM trwało to kilka minut.

8. Z kroku nr 2 skopiuj PrivateKey BC i wklej do aplikacji RunYafu.exe w kroku 7 oraz kliknij w „Factor SharedSecred*PrivateKeyBC”. Zaczekaj na wynik obliczeń.

factors found

Już prawie koniec. Skopiuj ciąg znaków zaznaczony czerwoną ramką z CMD lub z pliku works.txt i przejdź do kroku nr 5.

Jeśli wszystko poszło zgodnie z przedstawionym poradnikiem – świetnie, udało Ci się odzyskać pliki! Daj znać zostawiając komentarz.

P.S Jeśli Twoje pliki zostały zaszyfrowane przez inne krypto-ransomware, skorzystaj z narzędzia ransomware removal kit.  

Adrian Ścibor

Adrian Ścibor

W ramach działań związanych z cyberbezpieczeństwem odpowiada w AVLab za przeprowadzanie testów rozwiązań ochronnych przed zagrożeniami. Opracowuje strategie oraz narzędzia, które pomagają w ochronie danych i systemów przed cyberatakami. Współuczestnik międzynarodowej grupy non-profit AMTSO, która zrzesza ekspertów IT.
Adrian Ścibor

Adrian Ścibor

W ramach działań związanych z cyberbezpieczeństwem odpowiada w AVLab za przeprowadzanie testów rozwiązań ochronnych przed zagrożeniami. Opracowuje strategie oraz narzędzia, które pomagają w ochronie danych i systemów przed cyberatakami. Współuczestnik międzynarodowej grupy non-profit AMTSO, która zrzesza ekspertów IT.

PODZIEL SIĘ:

guest
2 komentarzy
najstarszy
najnowszy oceniany
Inline Feedbacks
View all comments

Wyrażam zgodę na przesłanie oferty drogą telefoniczną przez IT Partners security sp. z o.o. z siedzibą Katowicach ul.Padereskiego 35 na podany przeze mnie adres e-mail zgodnie z ustawą z dnia 10 maja 2018 roku o ochronie danych osobowych (Dz. Ustaw z 2018, poz. 1000) oraz zgodnie z Rozporządzeniem Parlamentu Europejskiego i Rady (UE) 2016/679 z dnia 27 kwietnia 2016 r. w sprawie ochrony osób fizycznych w związku z przetwarzaniem danych osobowych i w sprawie swobodnego przepływu takich danych oraz uchylenia dyrektywy 95/46/WE (RODO).

Wyrażam zgodę na przesłanie oferty drogą mailową przez IT Partners security sp. z o.o. z siedzibą Katowicach ul.Padereskiego 35 na podany przeze mnie adres e-mail zgodnie z ustawą z dnia 10 maja 2018 roku o ochronie danych osobowych (Dz. Ustaw z 2018, poz. 1000) oraz zgodnie z Rozporządzeniem Parlamentu Europejskiego i Rady (UE) 2016/679 z dnia 27 kwietnia 2016 r. w sprawie ochrony osób fizycznych w związku z przetwarzaniem danych osobowych i w sprawie swobodnego przepływu takich danych oraz uchylenia dyrektywy 95/46/WE (RODO).

[ninja_tables id=”27481″]