חזרה

פגם קריטי בספריית התמונות Pillow מאפשר הרצת קוד דרך שם קובץ EPS מעוצב
SiTech AI Team2 דק׳ קריאה

פגם קריטי בספריית התמונות Pillow מאפשר הרצת קוד דרך שם קובץ EPS מעוצב

פגם בטיפול ב-EPS של Pillow מאפשר לתוקפים להריץ קוד על ידי שליטה בשם הקובץ; CVE-2026-112900 משפיע על גרסאות 2.6.0-12.3.0 ותוקן ב-13.0.0 (16 באוקטובר). שדרגו וחסמו העלאות EPS לא מהימנות.

פרטי הפגיעות

Pillow, ספריית התמונות הנפוצה ביותר עבור Python, מכילה פגם קריטי בטיפול ב-EPS. בעת פתיחת קובץ EPS, Pillow מעבירה את שם הקובץ לתוכנית Ghostscript ללא אימות. תוקף השולט בשם הקובץ יכול לגרום ל-Ghostscript לפרש את השם כפקודות, דבר המוביל להרצת קוד שרירותית. הפגיעות מתועדת כ-CVE-2026-112900 ומשפיעה על גרסאות Pillow מ-2.6.0 עד 12.3.0. המתחזקים שחררו את גרסה 13.0.0 ב-16 באוקטובר כדי לטפל בבעיה.

ההודעה מציינת שהפגם מופעל על ידי שם הקובץ, ולא על ידי דבר במסמך ה-PostScript, כלומר קובץ EPS בלתי מזיק עלול להפוך למסוכן כאשר השם משתנה. הפגם מופעל רק במערכות שבהן מותקנת התוכנית gs, הנדרשת לתמיכה ב-EPS.

השפעה והיקף

Pillow משמשת בטפסי העלאה באינטרנט, יצירת אווטרים ותמונות ממוזערות, צנרת מסמכים ו-PDF, ובמרבית פרויקטי למידת מכונה. OX Security מעריכה שהספרייה מורדת כ-436 מיליון פעמים בחודש. גרסה 13.0.0 היא גרסת אבטחה גדולה הכוללת תיקונים בארבע רמות חומרה, שתיים מהן מדורגות כקריטיות על ידי המתחזקים. רישום ה-CVE מדרג את פגם ה-EPS ב-9.2 מתוך 10, בעוד המתחזקים מדרגים אותו כבינוני מכיוון שהתוקף חייב לשלוט בשם הקובץ. לא נצפה ניצול של פגם ה-EPS בשטח.

תיקונים קריטיים נוספים באותה גרסה מטפלים בבאג שימוש חוזר בזיכרון לאחר שינוי מצב, שתי גלישות בפענוח JPEG, וגלישת חיץ TIFF ותיקה הקיימת מאז 2013. גלישת ה-JPEG בפורמט FlashPix יכולה להשיג הרצת קוד עם קריאה בודדת ל-Image.open כאשר חבילת olefile האופציונלית מותקנת. גלישת ה-TIFF מתרחשת בעת שמירת TIFF דחוס לחיץ בזיכרון כגון io.BytesIO, דפוס נפוץ לשירותים המקודדים מחדש העלאות.

צעדי הקלה

שדרגו ל-Pillow 13.0.0 ובנו מחדש כל הקונטיינרים, חבילות wheel, או תמונות בסיס המכילות עותק ישן יותר. Pillow 13 מפסיקה את התמיכה ב-Python 3.10, לכן סביבות שעדיין על 3.10 חייבות לעבור ל-Python 3.11 או חדש יותר. פקודת השדרוג היא pip install -U "Pillow>=13.0.0".

אם שדרוג מיידי אינו אפשרי, ההקלות הבאות מפחיתות סיכון: השאירו את תוכנית gs מחוץ למארחים המעבדים העלאות לא מהימנות ולעולם אל תעבירו שם קובץ בשליטת תוקף ל-Image.open עבור קבצי EPS; הימנעו משימוש ב-draft() ו-thumbnail() על קבצי JPEG לא מהימנים, או קראו ל-load() תחילה, או העבירו reducing_gap=None; התייחסו לשמירת TIFF לחיץ בזיכרון כפעולה רגישה כאשר התמונה מגיעה ממשתמש.

מקורות: The Hacker News

SiTech

SiTech — פיתוח אתרים בכוח ה-AI

אנחנו בונים אתרים מהירים ומודרניים ומשלבים AI בתהליכי עבודה אמיתיים. יש לכם פרויקט או שאלה? נשמח לעזור.