Rejetto HFS הוא שרת קבצים קטן שאנשים מריצים כדי לשתף תיקייה מהמחשב דרך הדפדפן. בגרסאות 3.0.0 עד 3.2.0 הוא גוזר את המפתח שחותם על עוגיות ההתחברות ממחולל מספרים אקראיים שאינו מיועד לאבטחה, ובמקביל מחזיר לפונים שלא הזדהו תוצרים של אותו מחולל עצמו. תוקף שאוסף כמה תשובות התחברות יכול לשחזר את המפתח, לייצר לעצמו עוגיית מנהל, ומשם להריץ קוד על המחשב. הציון שניתן לחולשה הוא 9.3 מתוך 10.
מה החולשה?
כשאתם מתחברים לשירות, הוא שולח לדפדפן עוגייה שאומרת בעצם "זה המשתמש הזה, הוא כבר הזדהה". כדי שאי אפשר יהיה לכתוב עוגייה כזאת לבד, השרת חותם עליה במפתח סודי שרק הוא מכיר. כל הביטחון של המנגנון הזה תלוי בדבר אחד: שאיש מלבד השרת אינו יודע את המפתח.
ב-HFS המפתח הזה נגזר מ-Math.random, מחולל המספרים האקראיים הרגיל של JavaScript. המחולל הזה בנוי למשחקים ולהגרלות ולא לאבטחה, והוא אינו אקראי באמת: הוא מתקדם לפי נוסחה ממצב פנימי, ומי שמכיר מספיק מהתוצרים שלו יכול לחשב את המצב ולהמשיך את הסדרה קדימה ואחורה.
וכאן נכנס החלק שהופך את זה מחולשה תיאורטית לנצל ממשי. לפי הרשומה, השרת מחזיר לפונים שלא הזדהו תוצרים של אותו מחולל בתוך תשובות ההתחברות. כלומר התוקף אינו צריך לנחש דבר, הוא מקבל את חומר הגלם ישירות: הוא אוסף מספר קטן של תשובות התחברות, משחזר מהן את המצב הפנימי של המחולל, מחלץ את מפתח החתימה, וכותב לעצמו עוגייה תקפה שאומרת שהוא המנהל.
מכאן זה ממשיך הלאה. לפי הרשומה יש ב-HFS הגדרה בשם server_code, וממנה אפשר להגיע להרצת קוד על המחשב שמריץ את השרת. כך גישת מנהל הופכת לשליטה על המכונה.
לסוג הכשל הזה קוראים שימוש במחולל אקראיות שאינו קריפטוגרפי. שלב הניחוש, שעליו נשענת בדרך כלל ההגנה, אינו קיים כאן בכלל.
מי מושפע?
לפי הרשומה, HFS בגרסאות 3.0.0 עד 3.2.0.
זאת אינה תוכנה ארגונית. HFS הוא כלי של מי שרוצה להעביר קבצים גדולים בלי להעלות אותם לשירות ענן, ולכן בישראל מדובר בקהל מוגדר: משתמשים פרטיים, צוותים קטנים ומי שמריץ שרת קבצים אישי, לא פעם מהמחשב הביתי.
והחשיפה לאינטרנט היא מה שקובע כאן. שרת כזה מוקם בדיוק כדי שאפשר יהיה להגיע אליו מבחוץ, והניצול מתחיל בפניות התחברות רגילות מהרשת, בלי חשבון ובלי שאף אחד ילחץ על משהו. שרת קבצים אישי שחשוף לאינטרנט בגרסה שבטווח הוא מחשב שאפשר להשתלט עליו מרחוק.
האם מנוצלת בפועל?
אין דיווח ידוע על ניצול בפועל. החולשה אינה מופיעה בקטלוג ה-KEV של CISA, סוכנות הסייבר האמריקאית, שמרכז את החולשות שידוע כי תוקפים משתמשים בהן.
מה שכן, מסלול הניצול מתואר בפומבי. הרשומה פורסמה ביולי 2026, וחברת vulncheck פרסמה התראה שמפרטת את השלבים, כולל שחזור המצב של המחולל וזיוף העוגייה. כשהמסלול כתוב ומפורסם, המרחק בין חולשה מתועדת לכלי אוטומטי שמריץ אותה מתקצר.
מה עושים?
עדכנו ל-HFS 3.2.1. זאת הגרסה הראשונה שמחוץ לטווח הפגיע לפי הרשומה, והיא פורסמה ב-GitHub.
אל תחשפו את HFS לאינטרנט אם אינכם חייבים. אם אתם צריכים להגיע לקבצים מבחוץ, עשו את זה דרך חיבור VPN לרשת הביתית במקום להעמיד את השרת מול הרשת הפתוחה.
ואם הרצתם גרסה בטווח 3.0.0 עד 3.2.0 כשהיא חשופה לאינטרנט, התייחסו לאפשרות שמישהו כבר נכנס. בדקו את ההגדרה server_code, מפני שהיא הדרך שדרכה מריצים קוד והיא נשארת כפי שהושארה גם אחרי עדכון. בדקו גם את חשבונות המנהל המוגדרים בשרת ואת רשימת התיקיות שהוא משתף, והחליפו את סיסמת המנהל.