בכלי rclone, תוכנה נפוצה לסנכרון קבצים מול שירותי אחסון בענן, תוקנה חולשה בממשק הבקרה מרחוק. תוקף לא מזוהה יכול לנצל אותה כדי לכבות את דרישת האימות של הממשק, ומשם להגיע לפעולות ניהוליות. הציון שלה הוא 9.2.
מה החולשה?
ל-rclone יש ממשק בקרה מרחוק שנקרא RC, שדרכו אפשר להפעיל פעולות ולשנות הגדרות בזמן ריצה. חלק מהפעולות בממשק הזה מסומנות כדורשות אימות, וחלק לא.
הבעיה היא שפעולה אחת שלא סומנה כדורשת אימות מסוגלת לשנות את ההגדרות הגלובליות, כולל ההגדרה שקובעת אם צריך אימות בכלל. תוקף קורא לה, מכבה את דרישת האימות, ומאותו רגע גם הפעולות שכן היו מוגנות פתוחות בפניו.
זאת חולשה עם צורה מסוימת שכדאי לזהות: לא נשברה שום הגנה, אלא נמצאה דרך לגרום למערכת לכבות אותה בעצמה. השומר בפתח לא הוכה, הוא קיבל הוראה ללכת הביתה.
התנאי המקדים הוא ששרת ה-RC פועל בלי אימות HTTP גלובלי. מי שהגדיר שכבת אימות ברמת השרת אינו חשוף בצורה הזאת.
מי מושפע?
מי שמריץ rclone בגרסאות מ-1.45 ועד לפני 1.73.5, ומפעיל את שרת ה-RC.
חשוב לומר את זה במפורש: שימוש רגיל ב-rclone משורת הפקודה, כלומר הרצת פקודת סנכרון ידנית, אינו מפעיל את השרת הזה ואינו חשוף. הרלוונטיות היא למי שמריץ את rclone כשירות מתמשך, למשל בשרת גיבויים או בתהליך אוטומטי.
האם מנוצלת בפועל?
נכון לעדכון האחרון של הדף הזה, החולשה אינה מופיעה בקטלוג ה-KEV של סוכנות הסייבר האמריקאית CISA, הרשימה שמרכזת חולשות שידוע על ניצול שלהן. כלומר אין דיווח פומבי על ניצול.
עם זאת, מה שנמצא מעבר לממשק הזה הוא בדיוק מה שתוקפים מחפשים. rclone מוגדר לרוב עם הרשאות גישה לאחסון בענן, ושליטה בו היא שליטה בגיבויים ובקבצים שהוא מסנכרן.
מה עושים?
עדכנו את rclone לגרסה 1.73.5 או חדשה יותר. פרטי החולשה נמצאים בהודעת האבטחה של הפרויקט.
בדקו אם אתם בכלל מריצים את שרת ה-RC. אם אינכם נזקקים לו, אל תפעילו אותו. זאת הדרך הפשוטה ביותר לסגור את החשיפה.
אם אתם כן צריכים אותו, הגדירו אימות HTTP גלובלי והגבילו את ההאזנה לכתובת מקומית בלבד במקום לכל הכתובות.
מכיוון ש-rclone מחזיק הרשאות לאחסון בענן, אם הרצתם גרסה חשופה עם ממשק פתוח לרשת, שווה להחליף את פרטי הגישה שהוגדרו בו.