בגרסאות Office של 2003, 2007 ו-2010, וברכיב VBE6.dll של מנוע ה-VBA, החיפוש אחר ספריות קוד כלל גם את התיקייה שממנה נפתח המסמך. מי שהצליח להניח שם קובץ DLL משלו גרם לתוכנה לטעון אותו ולהריץ את הקוד שבתוכו, בהרשאות של מי שפתח את הקובץ. הציון הוא 7.8 מתוך 10, והרשומה מציינת שהחולשה נוצלה בשטח כבר ביולי 2012.
מה החולשה?
תוכנה מודרנית אינה מחזיקה את כל הקוד שלה בקובץ אחד. חלקים ממנה יושבים בספריות נפרדות, קובצי DLL בעולם של ווינדוס, שנטענות בזמן הריצה לפי הצורך. כדי למצוא ספרייה מבוקשת המערכת עוברת על רשימת מקומות בסדר קבוע: קודם כאן, אחר כך שם, וכן הלאה עד שהיא מוצאת קובץ בשם המתאים.
הבעיה נולדת כשאחד המקומות ברשימה הוא תיקייה שגורם אחר שולט בה. במקרה הזה נכללה בחיפוש תיקיית העבודה הנוכחית, כלומר התיקייה שממנה נפתח המסמך. הרשומה מדגימה את התרחיש בדיוק כך: תיקייה שמכילה קובץ docx, ולצידו קובץ DLL שהתוקף הכין מראש. המשתמש פותח את המסמך, Office מחפש את הספרייה, נתקל קודם בזו של התוקף וטוען אותה.
לטכניקה קוראים נתיב חיפוש לא מהימן. מה שהופך אותה למסוכנת אינו התחכום שלה אלא ההפך: היא אינה נראית כמו מתקפה. הקורבן פתח מסמך, וזה כל מה שהוא עשה. שימו לב שהניצול מקומי, כלומר שני הקבצים כבר צריכים להימצא במקום שהמכונה קוראת ממנו.
מי מושפע?
לפי הרשומה: Office 2003 עם SP3, Office 2007 עם SP2 ועם SP3, ו-Office 2010 בגרסת השחרור ועם SP1. וגם Microsoft Visual Basic for Applications עצמו וערכת הפיתוח שלו.
אלה גרסאות שאיבדו תמיכה מזמן. השאלה המעשית אינה כמה מכונות כאלה נשארו, אלא איפה הן יושבות. לרוב לא על שולחן של עובד, אלא במקום שבו התוכנה שרצה חשובה יותר מהמערכת שמתחתיה: עמדה שמפעילה יישום ייעודי, מחשב שמחובר למכשיר מדידה, שרת ישן ששכחו לכבות. מי שעובד היום עם Microsoft 365 או עם גרסת Office נתמכת אינו נוגע בחולשה הזאת.
האם מנוצלת בפועל?
כן, ופעמיים. הרשומה עצמה מציינת שהחולשה נוצלה בשטח כבר ביולי 2012, בסמוך לפרסומה. ב-13 באפריל 2026 היא נכנסה לקטלוג ה-KEV של סוכנות הסייבר האמריקאית CISA, רשימת החולשות שידוע שתוקפים מנצלים אותן בשטח, עם מועד תיקון לגופים הפדרליים עד 27 באפריל 2026.
חולשה בת ארבע עשרה שנה שחוזרת לרשימה מספרת פחות על הבאג ויותר על מצאי המכונות. מישהו סרק, מצא גרסאות שלא זזו מאז, וגילה שהשיטה עדיין עובדת עליהן.
מה עושים?
התיקון הרשמי הוא עדכון האבטחה MS12-046 של מיקרוסופט, שיצא ביולי 2012. אם נשארה אצלכם מכונה עם Office 2003, 2007 או 2010, ודאו שהעדכון הזה מותקן עליה.
התיקון לבדו אינו התשובה השלמה, כי מכונה שלא קיבלה עדכון מ-2012 כנראה לא קיבלה גם את כל מה שבא אחריו. מיפוי המכונות הישנות שרצות אצלכם הוא המשימה האמיתית כאן, וזו בדרך כלל רשימה קצרה שאיש לא הסתכל עליה זמן רב.
יש הרגל אחד שעוזר גם בלי עדכון. אל תפתחו מסמכים ישירות מתוך תיקייה שהגיעה מבחוץ, ארכיון שחולץ או תיקייה משותפת שאינכם שולטים בה. העתיקו את המסמך לתיקייה שלכם ופתחו משם. החולשה תלויה בכך שקובץ זר יושב לצד המסמך, וההעתקה משאירה אותו מאחור.
ומכונה שאי אפשר לעדכן צריכה להיות מבודדת: בלי גישה לאינטרנט, ובלי אפשרות לכתוב אליה בחופשיות מהרשת.