הרשומה של החולשה הזאת נפתחה ביוני 2020. בספטמבר 2024, ארבע שנים ושלושה חודשים אחר כך, היא נכנסה לקטלוג החולשות המנוצלות בפועל של CISA. מדובר בנתבים העסקיים Vigor3900, Vigor2960 ו-Vigor300B של DrayTek, ותוקף מרוחק, בלי שם משתמש וסיסמה, יכול להריץ עליהם פקודות. הציון הוא 9.8 מתוך 10.
מה החולשה?
הנתב מציע דרך להעלות אליו קובץ, ובצד השרת יושב רכיב שמקבל אותו ומטפל בו. הרכיב הזה, cgi-bin/mainfunction.cgi/cvmcfgupload, לוקח את שם הקובץ שהגיע מבחוץ ומעביר אותו הלאה אל שורת הפקודה של המכשיר. תוקף ששותל בשם הקובץ תווים מיוחדים, מאלה שמפרידים בין פקודה לפקודה, גורם למכשיר להריץ את מה שבא אחריהם.
התיאור מוסיף תנאי מדויק אחד: הניצול עובד כשסוג התוכן שנשלח הוא text/x-python-script. זה גם הפרט שמפריד את החולשה הזאת מ-CVE-2020-14472, באג אחר באותם מכשירים, והרשומה מציינת את ההבחנה במפורש.
מה שיוצא מזה הוא הרצת פקודות על המכשיר, מרחוק ובלי אימות. הציון 9.8 משקף בדיוק את זה: פגיעה גבוהה בסודיות, בשלמות ובזמינות, בלי שום תנאי מקדים.
נתב הוא המכשיר שכל התעבורה עוברת דרכו. מי ששולט בו יושב באמצע הכול.
ועוד פרט מהרשומה: מצורף אליה מאגר קוד ציבורי ב-GitHub שמתעד את הניצול. כלומר מי שרוצה לשחזר אותו אינו צריך למצוא כלום בעצמו.
מי מושפע?
קושחת Vigor3900, Vigor2960 ו-Vigor300B בגרסאות שקודמות ל-1.5.1.
אלה נתבים לעסקים ולא לבית. בישראל DrayTek נמצאת בעיקר בעסקים קטנים ובינוניים ובמשרדים, לא פעם כציוד שהותקן פעם על ידי ספק חיצוני ומאז אף אחד לא נגע בו. זה בדיוק סוג המכשיר שקושחה משנת 2020 שורדת עליו.
האם מנוצלת בפועל?
כן. ב-30 בספטמבר 2024 הוסיפה סוכנות הסייבר האמריקאית CISA את החולשה לקטלוג ה-KEV שלה, רשימת החולשות שידוע כי תוקפים מנצלים בפועל, עם מועד תיקון לגופים הפדרליים ב-21 באוקטובר 2024. הרשומה הפומבית נפתחה ב-30 ביוני 2020, יותר מארבע שנים לפני כן.
ארבע שנים הן הרבה זמן, והתיקון היה זמין כמעט לאורך כולן. מה שהשתנה ב-2024 אינו הבאג. זה מי משתמש בו.
מה עושים?
עדכנו את הקושחה לגרסה 1.5.1 ומעלה. היכנסו לממשק הניהול של הנתב, בדקו קודם איזו גרסה מותקנת, וגשו למסך שדרוג הקושחה. הקבצים וההודעות נמצאים בעמוד עדכוני האבטחה של DrayTek.
בדקו אם ממשק הניהול נגיש מהאינטרנט. החולשה מנוצלת מרחוק ובלי אימות, ולכן מכשיר שהממשק שלו פתוח החוצה הוא המקרה הדחוף. סגירת הגישה מבחוץ, והשארתה לרשת הפנימית או דרך VPN בלבד, מקטינה את החשיפה מיד.
אם המכשיר רץ על קושחה מ-2020 ולא עודכן מאז, שווה גם להסתכל על ההגדרות שלו. נתב שהיה חשוף לחולשה שמריצה עליו פקודות יכול לשאת שינויים שלא אתם עשיתם: כללי ניתוב, העברות פורטים או שרתי DNS שהוגדרו מחדש.
ואם הדגם שלכם כבר אינו מקבל קושחה חדשה, ההחלטה היא על החלפה. אין דרך לתקן באג בקוד של מכשיר שאין לו עדכון.