CVE-2023-40581
Təsvir
yt-dlp əlavə funksiyalar və düzəlişlərə malik youtube-dl çatışmasıdır (fork). yt-dlp istifadəçiyə `--exec` bayrağı vasitəsilə yükləmə mərhələsinin müxtəlif etaplarında icra olunacaq shell əmr sətirlərini təmin etməyə imkan verir. Bu bayraq öz arqumentində çıxış şablonunun genişləndirilməsinə icazə verir ki, beləliklə meta-məlumat dəyərləri shell əmrlərində istifadə oluna bilsin. Meta-məlumat sahələri, bu dəyərlərin shell-ə təhlükəsiz ötürülməsi üçün onları dırnağa almaq/escape etmək məqsədilə nəzərdə tutulmuş `%q` çevrilməsi ilə birləşdirilə bilər. Lakin `cmd` (Windows-da Python-un `subprocess` modulu tərəfindən istifadə edilən shell) üçün tətbiq edilən escape mexanizmi xüsusi simvolları düzgün şəkildə escape etmir, bu da `--exec` birbaşa zərərli şəkildə hazırlanmış uzaq məlumatlarla istifadə edildikdə uzaqdan kodun icrasına imkan verə bilər. Bu boşluq yalnız Windows üzərindəki `yt-dlp`-yə təsir edir və `yt-dlp`-nin `cmd` və ya `PowerShell` vasitəsilə işə salınmasından asılı olmayaraq mövcuddur. `--exec` parametrində çıxış şablonunun genişləndirilməsinə dəstək və bu zəiflik vərziya 2021.04.11-də `yt-dlp`-yə əlavə edilmişdir. yt-dlp versiya 2023.09.24 hər bir xüsusi simvolu düzgün şəkildə escape edərək bu problemi həll edir. Escape etməyin yolu tapılmadığı üçün `\n` simvolu `\r` ilə əvəzlənəcək. yt-dlp proqramını mümkün qədər tez 2023.09.24 versiyasına yüksəltmək tövsiyə olunur. Həmçinin, `--exec` istifadə edərkən həmişə ehtiyatlı olun, çünki bu konkret zəiflik aradan qaldırılsa da, shell əmrlərində yoxlanılmamış giriş məlumatlarından istifadə etmək təbii olaraq təhlükəlidir. Yüksəltmə imkanı olmayan Windows istifadəçiləri üçün: 1. `--exec` daxilində {} (filepath)-dən başqa heç bir çıxış şablonu genişləndirməsindən istifadə etməyin. 2. Əgər `--exec` daxilində genişləndirmə lazımdırsa, istifadə etdiyiniz sahələrdə ", | və ya & simvollarının olmadığını yoxlayın. 3. `--exec` istifadə etmək əvəzinə, info json faylını yazın və sahələri onun vasitəsilə yükləyin.
Necə düzəltmək olar
- yt-dlp_project yt-dlp2023.09.24 və ya daha yeni versiya
- yt-dlp2023.09.24 və ya daha yeni versiya
Təsirlənən məhsullar
| Məhsul | Təsirlənən versiyalar | Düzəldildiyi versiya |
|---|---|---|
| yt-dlp_project yt-dlp | 2021.04.11 ≤ v < 2023.09.24 | 2023.09.24 |
| yt-dlpPyPI | 2021.04.11 ≤ v < 2023.09.24 | 2023.09.24 |
Versiyanızı yoxlayın
Məhsulu seçin və istifadə etdiyiniz versiyanı yazın; versiyanın təsirlənən aralıqda olub-olmadığını görün.
Attack Surface Management
Domenlərinizə bağlı aktivləri, onlarda işləyən texnologiyaları və məlum zəiflikləri bir siyahıda görün.