בשרת הבנייה TeamCity של JetBrains היה אפשר להריץ קוד מרחוק, דרך עקיפה של רשימת ההיתר בפרוטוקול של הודעות הבנייה. הציון הוא 8.1 מתוך 10, והגרסאות שסוגרות את החולשה הן 2025.11.8, 2026.1.4 ו-2026.2.

מה החולשה?

כשתוכנה מקבלת נתונים מהרשת היא מקבלת אותם כרצף בתים, וכדי לעבוד איתם היא צריכה להפוך אותם לאובייקטים שיש להם סוג ותוכן. ברגע הזה נפתחת שאלה: מי קובע איזה סוג אובייקט ייווצר. אם מי ששלח את הנתונים הוא זה שקובע, הוא יכול להביא את התוכנה לייצר אובייקט מסוג שמפעיל קוד כבר בשלב ההקמה שלו, ואז הקוד שלו רץ בלי שאף אחד החליט להריץ אותו. לכשל הזה קוראים פענוח נתונים שאינם מאומתים, וזה הסיווג שהרשומה נותנת כאן.

ההגנה המקובלת נגדו היא רשימת היתר: רשימה סגורה של סוגי אובייקטים שמותר לייצר, כך שכל דבר אחר נדחה. הרשומה אומרת שאת הרשימה הזאת היה אפשר לעקוף. כלומר ההגנה הייתה שם, והיא לא החזיקה.

הערוץ שבו זה קרה הוא פרוטוקול הודעות הבנייה, הדיווחים שזורמים אל השרת על מה שמתרחש בתהליך הבנייה. הדירוג מסמן ניצול דרך הרשת, בלי צורך בהרשאות ובלי פעולה של אף אחד, עם פגיעה גבוהה בסודיות, בשלמות ובזמינות, ובמקביל מסמן שהביצוע קשה ודורש תנאים שיתיישרו. זה הצירוף שמביא ל-8.1 ולא לציון גבוה יותר.

ושווה להבין במה מדובר כשמדובר בשרת בנייה דווקא. זאת המכונה שיש לה את קוד המקור, את פרטי האימות לסביבות שאליהן מפיצים, ואת היכולת לייצר את החבילות שיוצאות ללקוחות. הרצת קוד עליה אינה נעצרת בה.

מי מושפע?

לפי הרשומה, TeamCity בכל גרסה מוקדמת מ-2025.11.8, וכן בקו 2026.1 בכל גרסה מוקדמת מ-2026.1.4. הרשומה מציינת גם את 2026.2 כגרסה שהבעיה אינה קיימת בה.

TeamCity הוא מוצר של חברות תוכנה ושל צוותי פיתוח, ולא כלי שיש למשתמש פרטי. בישראל, שבה יש הרבה חברות תוכנה, זה אומר שרתי בנייה בתוך רשתות של חברות וגם מופעים שנגישים מבחוץ כדי לשרת סוכני בנייה מרוחקים. לעובד בחברה כזאת אין כאן צעד לעשות, והטיפול הוא של מי שמתחזק את השרת.

האם מנוצלת בפועל?

אין דיווח מאומת על ניצול, והחולשה אינה מופיעה בקטלוג החולשות המנוצלות בפועל של CISA, סוכנות הסייבר האמריקאית. חשוב לקרוא את זה בהקשר הנכון: הרשומה פורסמה ב-15 באוקטובר 2026, ובשלב כזה היעדר דיווח אומר בעיקר שעבר מעט זמן.

מה עושים?

1. בדקו איזו גרסה רצה אצלכם. מספר הגרסה של TeamCity מופיע במסך הניהול של השרת.

2. עדכנו לגרסה שסוגרת את החולשה בקו שלכם: 2025.11.8 למי שנמצא על 2025.11 או קודם, ו-2026.1.4 למי שנמצא על קו 2026.1. מי שעובר ל-2026.2 מקבל גם הוא את התיקון. רשימת התיקונים לפי גרסה מתפרסמת בדף התיקונים של JetBrains.

3. אחרי העדכון, החליפו את פרטי האימות שהשרת מחזיק. הרשומה מתארת הרצת קוד עם פגיעה גבוהה בסודיות, כלומר כל מה שהיה קריא על המכונה הזאת היה בהישג יד: מפתחות הפצה, token-ים של מאגרי קוד וסיסמאות של סביבות. עדכון סוגר את הדלת, הוא אינו מחליף מפתח שאולי כבר יצא.

4. עברו על היומנים של השרת סביב החודשים האחרונים וחפשו הודעות בנייה שהגיעו ממקורות שאינם הסוכנים שאתם מכירים.