Malware analizinin məqsədləri və növləri.
Zərərli proqramların analizi, şəbəkəyə gələ biləcək hücumları aşkar etmək və blok etmək üçün aparılan işlərin məcmusudur. Bu proses bir neçə əsas istiqaməti əhatə edir:
- Zərərli trafik nümunələrinin yaradılması
- Şəbəkədə yoluxmuş cihaz və faylların aşkarlanması
- İmza əsaslı müdafiə modellərinin təkmilləşdirilməsi
Bunlarla yanaşı, zərərli proqramların idarəetmə serverləri aşkarlanır, tərsinə mühəndislik (reverse engineering) üsulundan istifadə edilərək isə həmin proqramların mənbəyi müəyyən edilir.
İndi isə, 6 əsas analiz növünü tanıyaq:
1. Host-Based signatures
Host əsaslı imzalar hədəf komputerlərə yoluxmuş zərərli programların aşkar edilməsi üçün istifadə edilməkdədir. Adətən malware tərəfindən dəyişdirilən ya da əmələ gətirilən fayllar, registry girişləri analiz edilərək müəyyənedici faktor olaraq istifadə edilirlər. Host əsaslı imzalarda antivirus imzalarından fərqli olaraq malware programının xarakteristik xüsusiyyətlərinə yox, sistem üzərində nələr etdiyinə fokuslanılır.
2. Network signatures
Şəbəkə əsaslı imzalar, şəbəkə izləmə sistemlərində zərərli traffikin analiz edilməsi üçün istifadə edilirlər. Malware analizi etmədən bu imzaları əmələ gətirmək mümkün olsa da malware analizi nəticəsində əldə edilən məlumatların köməyi ilə bu imzalar əmələ gətirilməkdədir. Zərərli kod analizi statik və dinamik olmaq üzrə iki başlıq altında cəmlənmiş üsullarla edilməkdədir. Statik analiz təməl statik analiz və təkmilləşmiş statik analiz olaraq iki alt başlıq altında aparılarkən dinamik analiz də eyni şəkildə təməl və təkmilləşmiş analiz alt başlıqlaır altında aparılır.
3. Basic (təməl) Statik Analiz
Təməl statik analizdə zərərli program reverse edilmədən (tərsinə mühəndislik ilə kodları araşdırılmadan) sürətli bir şəkildə Virustotal kimi saytlar vasitəsilə faylın zərərli olub olmadığı imza əsaslı olaraq yoxlanılır. Bu nöqtədə özünügöstərmə analizi və tərsinə mühəndislik ilə kod analizi edilmədiyi üçün çox nöqtədə tək başına kifayət etmir. Malware analizinin ilk addımlarından biridir. Bu analiz növündə virus axtarışı, hash yoxlaması, İmport və Export cədvəlləri və PE (Portable Executable) başlıq məlumatları araşdırılmaqdadır.
4. Basic Dinamik Analiz
Təməl səviyyədə edilən dinamik analizdə malware etibarlı bir mühitdə işə salınaraq özünügöstərmə xüsusiyyətləri araşdırılır, yəni sistemdə necə rəftar etdiyinə baxılır. Təməl statik analizdə olduğu kimi təməl dinamik analizdə də dərin programlama biliyinə ehtiyac yoxdur. Bəsit dinamik analizi özünü yaxşı gizlədə bilən malware programlarının aşkar edilməsində qeyri-kafi qalmaqdadır. Məsələn, işə salınmış bir malware SMTP üzərindən spam atmağa başlayırsa, spesifik DNS istəkləri göndərirsə, Remnux və ya lab mühitində qurulmuş snifferlər köməyi ilə təməl dinamik analizi edildikdə, zərərli program rahatca aşkar edilərkən, sandbox kimi mühitləri registry tənzimləmələrindən anlayıb əməliyyatları dayandıran, özünü şifrələyib planlaşdırılmış tapşırıqlarla işləyən zərərlilərin analizi təməl dinamik analiz ilə mümkün olmaya bilər. Bu tərz zərərlilərin aşkar edilməsi üçün təkmilləşmiş səviyyədə analiz üsuları istifadə edilməlidir. Təməl səviyyə dinamik analizdə cuckoo, Sandbox, Sandboxie, Wireshark, Fakedns, İnetsim, ApateDNS, BURP, SSLStrip kimi alətlər istifadə edilir.
5. Advanced Static Analiz
Təkmilləşmiş səviyyə statik analizdə zərərli kodları tərsinə mühəndislik istifadə edilərək disassemble programları ilə analiz edirlər. Bu əməliyyat üçün programlama biliyi ilə bərabər disassembler istifadəsini bilmək, TCP/IP socket və thread kimi mövzuları araşdıracaq bilik səviyyəsinə də sahib olmaq lazımdır. Statik analizdə komandaların CPU içərisindəki sırası araşdırılaraq programın nə etdiyi ortaya çıxardılar. GDB, Immunity Debugger, IDA, Java Decomplier kimi alətlər analiz üçün istifadə edilir.
6. Advanced Dynamic Analiz
Özünü müxtəlif üsullarla gizləyən zərərli kodun interrupt edilərək yəni break point buraxılaraq komandalarının sistemdə mərhələ-mərhələ işə salınması vaxtı hərəkətlərinin debugger üzərindən izlənməsi ilə edilən analiz təkmilləşmiş səviyyə analiz olarak keçir. Olly Debugger və Windbg bu analiz məqsədilə istifadə edilə bilinər.
