למשך כ-33 שעות, בין ה-28 ל-30 באוגוסט, תוקפים חטפו טווח כתובות IP השייך לשירותי Softaculous ונצלו אותו כדי להפיץ עדכון תוכנה זדוני למערכת הניהול Virtualizor, שמריצה שרתים וירטואליים אצל ספקי אחסון רבים. מדובר בתקיפת שרשרת אספקה: העדכון הזדוני היה חתום בתעודת TLS תקפה, ורץ בהרשאות root על כל מכונה שהתקינה אותו.

מה קרה
גורם עוין תחת המספר האוטונומי AS62390 (NexonHost) החל להכריז ללא הרשאה על טווח כתובות ספציפי יותר מזה שמפעילה Hetzner באופן שגרתי, דרך ספק תעבורה בשם AS6204 (Zet.net). לפי כללי הניתוב הרגילים של BGP, הכרזה ממוקדת יותר זוכה לעדיפות — כך שהתעבורה ל-Softaculous נותבה בפועל דרך שרת בשליטת התוקף. מכיוון שגם תעבורת אימות הדומיין לצורך הנפקת תעודות עברה דרך אותו ניתוב חטוף, הצליח התוקף להשיג תעודת TLS תקפה מ-Let's Encrypt ולהגיש חבילת עדכון מתוחזקת לכאורה למכונות שבדקו עדכונים באותו חלון זמן. הבעיה שהפכה את זה לאפשרי: לקוח העדכונים של Virtualizor לא אימת חתימה קריפטוגרפית על חבילת העדכון, כך שקובץ מזויף התקבל כלגיטימי. לפי הודעת החברה, רק מספר קטן של התקנות שביצעו בדיקת עדכונים בזמן החטיפה קיבלו בפועל את החבילה הזדונית. הניתוב תוקן, התעודה המזויפת דווחה לביטול, וב-1 בספטמבר שוחררה גרסה 3.2.9.9 שסוגרת את הפער.
נקודות לשים לב
- אם אתה מריץ Virtualizor, עדכן מיידית לגרסה 3.2.9.9 ואל תסתמך רק על כך שהעדכון האוטומטי "עבד" — ודא את מספר הגרסה בפועל.
- בדוק לוגים ותהליכים חשודים על שרתים שביצעו בדיקת עדכונים בין ה-28.8 בשעה 20:57 UTC ל-30.8 בשעה 06:10 UTC — זהו חלון החשיפה הפוטנציאלי.
- תעודת TLS תקפה אינה ערובה לאותנטיות התוכן שמאחוריה — כשתשתית הניתוב עצמה נפרצת, גם אימות דומיין רגיל נחטף יחד איתה.
- הלקח הרחב: מנגנוני עדכון תוכנה חייבים לאמת חתימה קריפטוגרפית על החבילה עצמה, לא להסתמך רק על ערוץ ה-HTTPS שדרכו היא מגיעה.
- אין להסיק שכל התקנה של Virtualizor נפגעה — רק מכונות שבדקו עדכונים בפועל בזמן החטיפה נחשפו לחבילה הזדונית.
מקורות: BleepingComputer · The Register · הודעת Virtualizor

₿ אהבת את הפוסט?
אפשר לשלוח לי ביטקוין ישירות לכתובת שלי. סרקו את הקוד, או העתיקו את הכתובת:
bc1qsn043qmlv4ejxydeknkfm9u6e93e6tegmq9x85
שימו לב: העברה on-chain כרוכה בעמלת רשת שאינה תלויה בסכום, ולכן סכומים קטנים מאוד אינם כדאיים.