CVE-2025-12781
Təsvir
"base64" modulundakı b64decode(), standard_b64decode() və urlsafe_b64decode() funksiyalarına məlumat ötürülərkən, adətən URL təhlükəsiz əlifbası kimi "alternativ base64 əlifbası" təyin etmək üçün istifadə olunan "altchars" parametrinin dəyərindən asılı olmayaraq, "+/" simvolları həmişə qəbul edilir. Bu davranış əvvəlki base64 RFC-lərində tövsiyə olunanla üst-üstə düşür, lakin yeni RFC-lər artıq ya təyin edilmiş base64 əlifbasından kənar simvolların silinməsini, ya da xətanın qaytarılmasını tövsiyə edir. Köhnə davranış məlumatların bütövlüyü ilə bağlı problemlərə səbəb ola bilər. Bu davranış yalnız tətbiqiniz alternativ base64 əlifbasından ("+/" olmadan) istifadə etdikdə təhlükəli ola bilər. Əgər tətbiqiniz "altchars" parametrindən və ya urlsafe_b64decode() funksiyasından istifadə etmirsə, deməli, tətbiqiniz alternativ base64 əlifbasından istifadə etmir. Əlavə edilmiş yamalar base64-dekodlaşdırma davranışının xəta qaytarmasını TƏMİN ETMİR, çünki bu, davranışda dəyişiklik törədərdi və mövcud proqramların işini pozardı. Bunun əvəzinə, yama bu davranışı köhnəlmiş (deprecated) kimi qeyd edir və gələcək Python versiyasında bu davranış yeni tövsiyə olunan davranışla əvəz ediləcəkdir. İstifadəçilərə istifadəçi tərəfindən idarə olunan girişlərin gözlənilən base64 əlifbasına uyğunluğunu yoxlayaraq və ya b64decode() funksiyalarının altchars-dan kənar "+" və ya "/" simvollarını qəbul etməsi halında tətbiqlərinin təsir altında qalmayacağını təsdiqləyərək riskləri azaltmaq tövsiyə olunur.
Necə düzəltmək olar
- python python3.13.10, 3.14.1 və ya daha yeni versiya
- github.com/python/cpython/pull/141128
- github.com/python/cpython/commit/13360efd385d1a7d0659beba03787ea3d063ef9b
- github.com/python/cpython/commit/1be80bec7960f5ccd059e75f3dfbd45fca302947
- github.com/python/cpython/commit/9060b4abbe475591b6230b23c2afefeff26fcca5
- github.com/python/cpython/commit/e95e783dff443b68e8179fdb57737025bf02ba76
- github.com/python/cpython/commit/fd17ee026fa9b67f6288cbafe374a3e479fe03a5
Təsirlənən məhsullar
| Məhsul | Təsirlənən versiyalar | Düzəldildiyi versiya |
|---|---|---|
| python python | v < 3.13.10, 3.14.0 ≤ v < 3.14.1, 3.15.0 | 3.13.10, 3.14.1 |
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.