TAR formatı üçün Rust kitabxanalarında aşkarlanan zəiflik, iç-içə arxivdən faylların çıxarılmasına səbəb olur.

Rust dilində yazılmış async-tar kitabxanasında tar arxivlərinin oxunması və yazılması üçün funksiyalar təqdim edən bir zəiflik aşkar edilib (CVE-2025-62518, kod adı TARmageddon). Bu zəiflik, xüsusi hazırlanmış tar arxivini açarkən yalnız orada olan faylları çıxarmağa değil, həm də daxil edilmiş tar arxivindəki faylları çıxarmağa imkan verir. Zəiflik, arxivlərin doğrulama sistemlərini aşmaq və yoxlanılmayan faylları çıxarmaq üçün istifadə oluna bilər.

Zəiflik, async-tar kitabxanasının forklarda, məsələn, tokio-tar, krata-tokio-tar və astral-tokio-tar kitabxanalarında da meydana çıxır, eləcə də onların əsasında yaradılan utilitlərdə, məsələn, Python layihələri üçün yüksək performanslı pip əvəzedici olan uv paket menecerində. Vulnerable kitabxanaları istifadəyə verən tanınmış layihələr arasında docker konteynerlərini işə salan testcontainers alət də vardır; WebAssembly çalışma mühiti olan wasmCloud da qeyd olunur. crates.is deposunda son 90 gündə async-tar kitabxanasının 1.3 milyon, tokio-tar kitabxanasının 2.2 milyon, testcontainers kitabxanasının isə 2.9 milyon yüklənməsi olub.

Zəiflik, ustar və PAX başlıqlarındakı müxtəlif ölçü dəyərlərinin təhlilində qüsurlu bir mövqenin seçilməsi ilə bağlıdır. PAX formatında olan tar arxivlərində hər fayl üçün iki başlıq — klassik ustar və genişləndirilmiş PAX — göstərilir. Problemin səbəbi, zəiflibkləri açarkən faylların ölçüsünü PAX genişləndirilmiş başlığından hesablamaq əvəzinə, köhnəlmiş ustar başlığından götürməsidir. Ustar başlığındakı sıfır ölçü dəyəri varsa, arxasından gələn faylın məzmunu növbəti fayl üçün düzgün bir TAR başlıq bloku kimi işlənir.

TAR formatı üçün Rust kitabxanalarında aşkarlanan zəiflik, iç-içə arxivdən faylların çıxarılmasına səbəb olur.
TAR formatı üçün Rust kitabxanalarında aşkarlanan zəiflik, iç-içə arxivdən faylların çıxarılmasına səbəb olur.

Hücum etmək üçün yalnız ustar başlığında sıfır ölçü göstərilən və PAX formatı başlığında aktual ölçü olan bir TAR arxivi yaratmaq kifayətdir, bu da başqa bir tar arxivinin faylını əsas arxivin bir hissəsi olaraq işlənməsinə səbəb olur. Bu cür arxivlərin yaradılması üçün kod nümunəsi GitHub-da yerləşdirilib. Zəiflik, tokio-tar 0.5.6 və uv 0.9.5 versiyalarında aradan qaldırılıb. Qalan kitabxanalar üçün hələ təmir yoxdur, lakin astral-tokio-tar, async-tar və krata-tokio-tar üçün ayrıca düzəlişlər hazırlanıb.

Kitabxanalardakı zəifliklərə 10-dan 8.1 təhlükə səviyyəsi verilib, çünki bu problem açılan faylların yenidən yazılmasına istifadə oluna bilər (zəif nümunələrdə açılan fayllar arxivdə görünənlərdən fərqli olacaq). Eyni zamanda, uv paket menecerindəki zəiflik təhlükəsiz hesab olunur, çünki əgər hücum edən orijinal arxivin məzmununa təsir edə bilirsə, daha mürəkkəb bir hücum təşkil etməyə və daxil olan arxiv vasitəsilə zəiflikdən istifadə etməyə ehtiyac yoxdur; əsas arxivində toplanma səhnəcikləri vasitəsilə kodun icrasına nail olmaq daha asandır.

Zəifliyi aşkarlayan araşdırmaçılar, təhlükəsizlik yoxlamalarını aşmaq və konfiqurasiya fayllarını dəyişdirmək və ya tikinti prosesinə müdaxilə etməklə kodun icrasını əldə etməyə imkan verən bir neçə hipotetik hücum ssenarisini irəlilədiblər. Göndərilən arxivin avtomatlaşdırılmış təhlükəsizlik skaneri tərəfindən yoxlamaqdan və əl auditindən keçməsi gözlənilir, bu zaman yoxlayıcı, digər fayllarla birlikdə qəribə iç içə arxivə diqqət yetirməyəcək, daha sonra isə Rust kitabxanaları vasitəsilə arxivin açılması zamanı gözləniləndən başqa bir məzmun alınacaq.

Məsələn, hücumçu, əsas arxivdəki legitim pyproject.toml faylını ehtiva edən PyPI deposuna dəyişdirilmiş arxivi yükləyə bilər. Bu paket uv aləti vasitəsilə işlənəndə legitim pyproject.toml, inkişaf etdiricinin kompüterində və ya davamlı inteqrasiya sistemində toplanan zaman icra ediləcək əmrleri ehtiva edən ziyanlı variantla əvəz olunur. Eyni şəkildə, testcontainers alətindən istifadə edərək konteynerin imici çıxarıldıqda konteyner fayllarının yeniden yazılmasını təşkildə etmək mümkündür.

Mənbə: opennet.ru

DDoS qoruması olan saytlara etibarlı hosting satın alın, VPS VDS serverlər 🔥 DDoS qoruması olan saytlara etibarlı hosting satın alın, VPS VDS serverlər | ProHoster