PT-2026-120897
CVE-2026-112902
·
تاريخ النشر
2026-10-21
·
تاريخ التحديث
2026-11-11
الوصف من
CVSS 3.1
9.1
حرجةالمقاييسAV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H
اسم البرنامج المصاب والإصدارات المتأثرة
Pillow الإصدارات من 5.4.0 إلى 10.2.0
Description
توجد ثغرة تؤدي إلى كشف الذاكرة وانهيار البرنامج (segmentation fault) عند قيام البرنامج بإعادة حفظ الصور كملفات TIFF باستخدام مشفر libtiff. تكمن المشكلة في الدالة
PyImaging LibTiffEncoderNew() داخل الملف src/encode.c لأن المشفر لا يتحقق بشكل صحيح مما إذا كانت قيمة Python الممررة إلى الدالة المتغيرة TIFFSetField() تطابق تعريف الحقل المتوقع من قبل libtiff.يمكن للمهاجم تقديم ملف TIFF مصمم خصيصاً يحتوي على علامات (tags) معينة تؤدي إلى هذا التعارض. على سبيل المثال، إذا تم تعريف العلامة بواسطة libtiff كمصفوفة معدودة ولكن تم تمريرها كقيمة مفردة (scalar)، فقد يفسر libtiff هذه القيمة كعدد من البايتات ويقوم بنسخ كمية عشوائية من ذاكرة العملية من مؤشر قديم إلى الملف الناتج. بدلاً من ذلك، إذا تم تعريف العلامة كمصفوفة ثابتة الحجم، فقد يتم استخدام القيمة المفردة كعنوان لذاكرة المصدر، مما يؤدي إلى انهيار العملية (SIGSEGV).
التفاصيل الفنية تشمل:
- الدالة المصابة:
PyImaging LibTiffEncoderNew() - المعاملات المصابة: علامات TIFF المصممة خصيصاً مثل
DNGPrivateData(50740) وActiveArea(50829). - التأثير: يمكن أن يؤدي ذلك إلى تجاوز كامل لخاصية ASLR من خلال تسريب مؤشرات من
imaging.soو libpython و libc و libtiff، أو التسبب في حجب الخدمة عن طريق انهيار العملية.
Recommendations
تحديث Pillow إلى الإصدار 10.3.0 أو أحدث.
كإجراء تخفيف مؤقت، تجنب إعادة حفظ الصور كملفات TIFF مضغوطة أو قم بتقييد معالجة ملفات TIFF القادمة من مصادر غير موثوقة.
وجدت خطأً في الوصف؟ لديك ما تضيفه؟ لا تتردد في مراسلتنا 👾