Güvəndiyimiz dağlara qar yağıb… Developerlər və power userlər (I use arch btw) tərəfindən istifadə edilən Arch Linux distrosu çox ağır bir zərbə aldı. IFIN və Sonatype-ın son hesabatlarına görə Arch User Repository (AUR) üzərində tam 400-dən çox paket kibercinayətkarlar tərəfindən ələ keçirililərək zərərli kodla zəhərlənib. Təhlükənin miqyası kifayət qədər böyükdür, çünki hackerlər birbaşa iş mühitlərimizi, developerlərin workstationlarını hədəf alıblar. Bu sadə bir virus deyil, Linux kernelinə sızlmağı bacaran olduqca mürəkkəb bir kiber kampaniyadır.
// Hücumun anatomiyası: PKGBUILD və "Orphaned" paketlər
Gəlin hücum mexanizmini dərindən incələyək. Hackerlər AUR platformasının ən zəif nöqtəsindən - sahibsiz qalmış (”orphaned”) və ya güvənilən authorları təqlid edən hesablardan istifadə ediblər. Bu paketlərin idarəçiliyini ələ keçirdikləri kimi, Arch Linux-un paket montaj skripti olan PKGBUILD (bash script) fayllarını modifikasiya ediblər. Sistemə paket yazılan zaman işə düşən pre-install və post-install funksiyalarına gizli komandalar əlavə olunub. Bu komandalar arxa fonda npm (Node Package Manager) repositorylərindən atomic-lockfile adlı bir zərərli paketi çəkirlər. Həmin npm paketi isə öz növbəsində sistemə deps adlı Linux ELF (Executable and Linkable Format) faylını inject edir. Bütün proses tam avtomatlaşdırılıb və istifadəçi sadəcə bir paket quraşdırdığını zənn edərkən zəncirvari infeksiya baş verir.
// Deep Dive: eBPF Rootkit ilə nüvə səviyyəsində gizlənmək
İşin mühəndislik baxımından ən təhlükəli hissəsi deps binary-sinin malik olduğu imkanlardır. Bu zərərli proqram sıradan bir infostealer deyil. Bu binary eBPF (extended Berkeley Packet Filter) texnologiyasından istifadə edərək Linux Kernel daxilində işləyən bilən rootkit imkanı qazanır. eBPF normalda şəbəkə və performans monitorinqi üçün əla alətdir, lakin hər hansı cinayətkarın əlində təhlükəli bir silaha çevrilir. Belə ki, bu proqram:
- Sistemdəki öz zərərli proseslərini (PID)
- Kompüterdə saxlanılan yoluxmuş faylları
- C2 (Command and Control) serveri ilə qurulan anormal şəbəkə interfeyslərini və outbound trafikini əməliyyat sistemi (OS) səviyyəsində tamamilə gizlədir. Yəni netstat, btop komandaları ilə bu prosesləri görmək olmur.
// Target Scope: Developerlər
Bəs bu infostealer hansı xüsusi hədəfə yönəlik hazırlanıb. Whanos-un analizlərinə görə, proqram xüsusi olaraq developerlərin və sistem inzibatçılarının iş mühitini talamaq üçün proqramlaşdırılıb. Hədəf nöqtələri:
- GitHub profillərinin credentialları və npm tokenlər
- HashiCorp Vault tokenləri, SSH artifaktları, VPN materialları, Docker və Podman konfiqurasiyaları
- Slack, Microsoft Teams, Discord və Telegram məlumatları
- Session hijacking etmək üçün brazuerlərin cookie databaseləri
Malware topladığı bütün məlumatları arxivləyir, multi-part fayllara bölür və HTTP sorğuları vasitəsilə cinayətkarların serverinə ötürür. Hər hansı bir developerin bu tokenləri itirməsi onun idarə etdiyi bütün serverlərin və şirkət infrastrukturunun açarlarını cinayətkarlara verməsi deməkdir.
>_ exit --remediation
Hazırda AUR maintainerləri yoluxmuş paketləri silir və hacker hesabları banlayırlar. Lakin əgər son bir neçə gün ərzində AUR üzərindən şübhəli və yenilənməyən bir paket yükləmisinizsə bu addımları atmağınız tövsiyyə olunandır:
- Michael Taggart tərəfindən paylaşılan və sistemdə atomic-lockfile izlərini axtaran scriptlər vasitəsilə sisteminizi yoxlayın.
- Əgər yoluxma faktı aşkarlanarsa yeganə seçiminiz bütün diski formatlamaq olacaq. Çünki bu malware kernel səviyyəsində işlədiyi üçün paketi silmək kifayət etmir.
- Yoluxma faktı aşkarlandığı təqdirdə GitHub tokenlərini, SSH açarlarını və Vault girişlərini, bundan əlavə brazuerdə açıq olan bütün sessiyaları parolları dəyişməklə sıfırlayın.
# [!] WARNING: KERNEL INTEGRITY AT RISK
# [!] eBPF rootkit detected in wild. Stay patched, stay alert.
$ khazrisec_audit --force-remediation
[+] Status: Exiting terminal.
[+] Stay safe. Keep your workflows immutable.
$ exit --status: Redundant_