חברת האבטחה RunSybil טוענת: פגיעות zero-day ב-CPython מסכנת את שרשרת האספקה של ה-AI, ואין מי שייקח אחריות על פתרון
חברת האבטחה RunSybil טוענת שמצאה ב-CPython פגיעות שמאפשרת לקוד זדוני החבוי במודל AI לפרוץ מסביבה מבודדת ולרוץ על שרתי האירוח. לדבריה היא עדכנה את CPython, את Pallets Project (המפתחים של Jinja) ואת Hugging Face, אך לא נמצא גורם שייקח על עצמו פתרון כולל. הטענות מבוססות על פרסום החברה בלבד, וטרם אומתו מול הגורמים הנוגעים בדבר.
חברת האבטחה RunSybil טוענת שגילתה פגיעות zero-day, כלומר פרצה שלא הייתה מוכרת קודם לכן, ב-CPython, המימוש הנפוץ של שפת Python. לפי פרסום החברה מ-3 בנובמבר, תוקפים יכולים לנצל אותה כדי לפרוץ לפלטפורמות שמארחות מודלי AI, גם בחברות הגדולות בעולם. החברה מוסיפה שהזהירה את הגורמים הרלוונטיים, אך לא נמצא מי שייקח אחריות על פתרון כולל.
חשוב לסייג: הטענות מבוססות על הבלוג של RunSybil בלבד. הפרסום הופץ גם ב-Reddit, אך הוא טרם אומת מול CPython, מול מפתחי Jinja או מול Hugging Face, ובחומרים שעמדו לרשותנו אין תגובה מטעמם.
איך קובץ מודל הופך לנשק
לפי החברה, מדובר בפגם בבטיחות הזיכרון של CPython, שמאפשר לתוקף לברוח מ-sandbox, סביבת הרצה מבודדת, ולהפעיל קוד שהוסתר במודל שנבנה במיוחד לצורך כך.
נקודת התורפה היא chat templates: תבניות מבוססות Jinja, מנוע התבניות של Pallets Project, שקובעות את מבנה השיחה בין המודל למשתמש. התבניות האלה מגיעות עם המודל, ולכן הן עשויות להגיע ממקור לא מהימן. הן רצות בתוך sandbox, ולטענת RunSybil שרשרת האספקה של ה-AI נשענת יותר ויותר על ההנחה שה-sandbox יבלום רכיבים כאלה. המחקר שלה, כך נטען, מראה כמה מהר ההנחה הזו יכולה לקרוס.
מבחינה טכנית, הפגיעות נמצאת באופן שבו CPython מטפל בטיפוסים גנריים. לפי התיאור, אובייקטים שנבנו במיוחד מאפשרים להריץ קוד באמצע תהליך פנימי, ולשנות נתונים שמורים אחרי שגבולותיהם כבר נבדקו. התוצאה היא קריאה מחוץ לגבולות הזיכרון (out-of-bounds read). החברה מציינת שהניצול מתבסס על אובייקטים שזמינים בכל תבנית, גם כשההקשר של ה-sandbox ריק.
לדברי RunSybil, זו לא הפעם הראשונה: בעבר היא ברחה מ-sandbox באמצעות פגם מתועד דומה ב-CPython, והפעם השתמשה בפגם שלא דווח קודם לכן. החברה מספרת שעבודה אנושית בשילוב GPT-5.6 Sol הובילה לגילוי בתוך פחות מיום.
מה נטען על התיקון
RunSybil כותבת שדיווחה ל-CPython, ל-Pallets Project ול-Hugging Face, הגופים שלדעתה מסוגלים לטפל בשורש הבעיה. לפי החברה, עדיין לא נמצא "בעלים" שמוכן ליישם פתרון כולל, ולכן חלקים גדולים מהשימושים ב-CPython נותרו חשופים, עם דרכי התמודדות שהיא מגדירה כקשות. היא מוסיפה שהיא ממשיכה לתאם עם הגורמים האלה ולעבוד עם החברות המושפעות, ושהפרסום המלא כולל גם סיפורי הצלחה ודרכי התמודדות.
למה זה חשוב
אם הטענות יאומתו, המשמעות היא שהורדה של מודל והרצתו בשרת עלולה להיות מסוכנת גם כשקיימת שכבת בידוד. לפי RunSybil, תוקף עשוי להשיג דריסת רגל בשרתים שמעבדים מיליוני בקשות של משתמשים, ואף לפגוע בתשתית הענן שמתחתם.
הסיפור מדגים ככל הנראה גם בעיית אחריות: כשהסיכון נוצר במפגש בין שפת תכנות, ספריית תבניות ופלטפורמת מודלים, לא ברור מי צריך לתקן אותו. החברה עצמה מעריכה שהסיכון מפגמי זיכרון כאלה יגדל ככל שמודלי AI ישתפרו באיתורם. עם זאת, מדובר בפרסום של חברה מסחרית, והיקף הסיכון בפועל יתברר רק לאחר בדיקה עצמאית ותגובת הגורמים המעורבים.