Ransomware şifrələmə üsulları

Tural Aliyev
3 min readNov 7, 2019

2017-ci ildə WannaCry, Petya, NotPetya və Locky kimi bir sıra ölkələrə təsir göstərən müasir ransomware, şifrəli faylları geri alan tədqiqatçılara qarşı zərərli proqramları təmin etmək üçün AES və RSA şifrələməsi ilə hibrid şifrləmə sxemindən istifadə edir.

İşi düzgün və etibarlı şəkildə yerinə yetirmək üçün ransomware baxımından nəyə ehtiyac var? ransomware faylları şifrələmək və deşifrə etmək istədiyi yerdən başlayaq

Kriptovalyutanın əsaslarından başlayaq və şifrələmə metodlarını etibarlı bir ransomware-yə qədər artıraraq hər bir tətbiqetmə növünün səhv olduğunu görək.

Yalnız simmetrik şifrələmə ransomware

AES kimi simmetrik şifrələmə alqoritmləri, böyük sürət sürəti ilə faylları şifrələmək üçün istifadə edilə bilər. Bu yanaşmada ransomware yalnız bu şifrələmə mexanizmindən istifadə edəcəkdir. Bütün istifadəçi fayllarını AES alqoritmi ilə şifrələyəcək və hər bir faylın şifrələnməsi üçün istifadə olunan düymələri diskdə saxlayacaqsınız. Beləliklə, yoluxmuş şəxs fidyəni ödədikdə deşifrə edən bu düyməni açarlarla açacaq və faylları deşifrə etməyə başlayacaqdır. Bu sadəlövh yanaşma tədqiqatçılara bu faylı tapmağa imkan verəcək və şifrələnməmiş olduğundan açarları istifadə edərək faylların şifrəsini açmaq üçün bir vasitə hazırlayın.

Müştəri asimmetrik şifrələmə

Bu yanaşma ilə ransomware RSA düymə cütü yaradacaq, bütün açarları açıq açarla şifrələyəcək və xüsusi açarı saxlanacaq serverə göndərəcəkdir . Bu şifrələmə üsulu olduqca yavaşdır, RSA şifrələməsi böyük sənədlərlə uzun müddət davam edəcək və həmçinin ransomware xüsusi açarı bir serverə göndərməlidir, bu ssenaridə yoluxmuş kompüter internetə qoşulmuş və server olmalıdır. onlayn da. İki tərəfdən hər hansı biri bağlı deyilsə, problem var. Ya ransomware onun icrasını dayandırmalı, ya da hər faylı açıq açarla şifrələməli və açarın şifrəsini açmadan silmək məcburiyyətində qalır və ya şəxsi açarı saxlamalı olursonradan deşifrə üçün müvəqqəti diskdə. Bu yaxşı bir həll deyil.

Server Asimmetrik şifrələmə

Bu sxemdə, server açar cütü yaradacaq , ictimai açar ransomware-də şifrələnəcək və hər bir fayl üçün, serveri açıq açar ilə faylı şifrələyəcək və yalnız serverin şəxsi açarı ilə olacaq. faylları bərpa edə bilirsən? Bəli, amma məntiqi bir problem var, server müştəriyə şəxsi açarı göndərir və faylları deşifr edəcəkmi? Bu yanaşma ilə tədqiqatçılar özəl açarı əldə edə bilərlərvə yoluxmuşların hamısına yayılır, buna görə bir nəfər fidyə ödəyərək hər infeksiya öz sənədlərinin şifrəsini açır. Şifrəni açmağın başqa bir yolu, yoluxmuş kompüterin, bütün şifrələnmiş faylları şifrələməyə serverə yavaş və yararlı olmadığı üçün internet üzərindən göndərməsidir. Hər iki halda, bu, qeyri-mümkündür.

Server və Müştəri asimmetrik şifrələmə + simmetrik şifrələmə

Bu sxem, bu gün əksər ransomware tərəfindən istifadə olunur, hibriddir, çünki həm simmetrik, həm də asimmetrik şifrələməni istifadə edir və şifrələmədə internet bağlantısına ehtiyac yoxdur, yalnız şifrəni açmaqda.

Bu sxemlə həm ransomware, həm də server öz RSA açar cütlərini yaradacaqlar. : Biz Client düymələri zəng edəcəyik Cpub.key üçün Client ictimai düyməsiCpriv.key üçün Client ictimai düyməsi , Spub.key üçün Server ictimai düyməsiSpriv.key üçün Server xüsusi açar . İşin necə olacağına baxın:

Hər bir infeksiya üçün ransomware Cpub.keyCpriv.key əmələ gətirəcək , həmçinin ransomware Spub.key şifrəli olacaqdır . Bu şifrelemek lazımdır Cpriv.key ilə Spub.key. Fayl şifrələmə qaydası başlayacaq, fayllar AES ilə şifrələnəcək, bitdikdə bütün AES düymələri Cpub.key ilə şifrələnəcəkdir.

Aşağıdakı Python kodu şifrələmə qaydasını göstərir.

şifrələmə qaydası

Qurbana sənədlərini geri qaytarmaq üçün AES düymələri lazımdır. Təəssüf ki, Cpub.key ilə şifrələnirlər , AES düymələrini deşifr etmək üçün Cpriv.key lazımdır , təəssüf ki, yenidən Cpriv.key Spub.key ilə şifrələnir . Cpriv.key’in şifrəsini açmaq üçün deşifrləmə üçün Spriv.key ehtiyac duyulur və server bu açarın sahibidir .

Aşağıdakı Python parçası kodu deşifrləmə qaydasını göstərir:

Fidyə nöqtələrində təhlükəsizlik nöqsanları ilə qarşılaşdı

WannaCry ransomware , yuxarıdakı şifrələmə sxemindən də istifadə edərək, tədqiqatlar RSA açar cütü yaratmaq üçün istifadə olunan əsas nömrələri əldə edə bildi, yaddaş düzgün ayrılmadı və yoluxmuş kompüter söndürülməsə, bərpa edilə bilər və müştərinin şəxsi açarını geri al. Bir göz atın Symantec təhlili wannacry üçün.

Bad Rabbit ransomware tədqiqatçıları, şifrləmə açarının yaddaşdan silinmədiyini və kölgə nüsxələrini silmədiklərini, qurbanların Windows backup funksionallığı ilə faylları bərpa etmələrini təmin etdi. https://securityaffairs.co/wordpress/64863/malware/bad-rabbit-ransomware-decryption.html

Harasom ransomware , tədqiqatçılar tərəfindən asanlıqla tapıla bilən ransomware- də hər bir sistemdəki hər bir faylın şifrələnməsi üçün istifadə etdiyi eyni açarı “gizlədir”. https://blog.emsisoft.com/az/27649/ransomware-encryption-methods/

Faylları şifrələyən və geri deşifrə edən etibarlı bir ransomware həyata keçirmək üçün şifrələmə düymələrindən istifadə etdikdən sonra yaddaşın boşaldılması lazımdır. AES düymələri və Cpriv.key disklərə yazılmamalıdır, hətta ransomware icraatında daha sonra şifrələnəcək və ya düz mətnlə serverə göndəriləcəkdir. Orijinal sənədlər parçalanmalı (təsadüfi baytlarla yazılmışdır) və sonra silinməlidir ki, bərpa proqramı orijinal sənədləri geri qaytarmaz. Ransomware öz serveri ilə TOR şəbəkəsi ilə əlaqə qurmalı və fidyə təcavüzkarların geri çəkilməsinin qarşısını alaraq, cryptocurrencies ilə ödənilməlidir.

Python Ransomware tətbiqi :

Pythonda POC ransomware tətbiq etdim. Xüsusiyyətləri aşağıdakılardır:

  • bütün istifadəçi sənədlərini AES-256-CBC ilə şifrələyin.
  • Hər bir fayl üçün təsadüfi AES açarı və IV.
  • AES düymələrini Cpub.key RSA-2048 ilə şifrələyin .
  • encrypt Cpriv.key RSA-2048 ilə Spub.key .
  • İnternet olmadan işləyir.
  • Spriv.key əldə etmək üçün serverlə əlaqə qurun .
  • Kompüter divar kağızı dəyişdirin.
  • Python veb-serveri

--

--