ACLים לא בטוחים

במחקר חדש של אוניברסיטת פרינסטון (דיווח בבלוג של אד פלטן) הם בדקו מערכות חלונות שונות, ובדקו את האבטחה של המערכת. במחקר הם בנו מודל של מערכת ההרשאות של המערכת, ובדקו אם יש חריגות. חריגות פירושן, למשל, שמשתמש בהרשאה מסויימת יכול קבל הרשאות גבוהות יותר.

ACL זהו כינוי למערכת הרשאות שמאפשרת שליטה מדוייקת על מי יכול לעשות מה. הבעיה איתו, למי שאין לו כוח לקרוא לא את המחקר, לא את פוסט ההפניה למחקר בבלוג של פלטן, ואפילו לא את ההתייחסות שלי לנושא בפוסט שלי בעבר, היא ש-ACL היא מערכת מסובכת מידי. הפירוט הרב שבו אפשר להגדיר את ההרשאות המדוייקות גורם לעודף אפשרויות, שבתורן גורמות לכך שרוב האנשים לא טורחים.

ייתכן שהיינו מוכנים לקבל את זה, בעיקרון. מה שהמחקר מראה הוא שאפילו יצרני התוכנות לא עושים את עבודתם מספיק טוב. התגלו תוכנות של Adobe, AOL, Macromedia ואפילו מיקרוסופט שמחלישות את האבטחה של המערכת מעצם זה שמתקינים אותן, עקב חוסר התייחסות נכונה למערכת ההרשאות.

כבר הרבה זמן שאני טוען שמערכת אבטחה צריכה להיות פשוטה בראש ובראשונה. זה רק עוד חיזוק.

שחר

נ.ב.
כמה קל להגיד “אמרתי לכם”?

מאת

שחר שמש

מייסד–שותף וחבר ועד בתנועה לזכויות דיגיטליות מייסד שותף בעמותת „המקור”. פעיל קוד פתוח. מפתח שפת התכנות Practical

15 תגובות בנושא “ACLים לא בטוחים”

      1. הוא מסתובב ולא רק בעיגולים אלא גם באליפסות ומרובעים ארבע-מימדיים.
        סתם, זה הייתי אני. בכבודי ובעצמי.

      1. ואי אפשר לסמלץ את המערכת של UNIX עם ACL?

        כי אם אפשר (ואני משער שאפשר), אז הבעיה היא יותר הPOLICY בהגדרת ההרשאות. ואז כל שנותר הוא לנצל את ה ACL למילוי הנישות שחסר בUNIX.

        1. כמובן שאפשר. הבעיה היא לא זו בכלל.

          הבעיה היא שאין דרך פשוטה להסתכל במבט מהיר על מערכת ההרשאות ולהגיד מהם. זה אומר שאנשים לא כל כך נוגעים בהרשאות, וזה, בתורו, אומר שההרשאות נותרות לא בטוחות.

          אתה יכול לכפות על עצמך הרשאות פשוטות יותר, אבל כל עוד אתה לא מקבל במבט אחד את כל המידע, לא עשית שום דבר.

          שחר

          1. למיטב הבנתי במערכת ACL ניתן להגדיר מה שנקרא ירושת הרשאות בDEFAULT וגם ההרשאות יהיו שוות או מגבילות יותר, כלומר,
            נגיד כל התת סיפריות של HOME הם לקבוצת USERS ואז נגיד למשתמש FOO יש ספריה שרק לו ניתן להיכנס (מוגדרת ע"י הSYSADMIN) (לכתוב…) ואז בא הקטע של הACL בו הוא יכול בעצמו להוסיף לקובץ שלו רק את BAR1 ו BAR2 במקום רק קבוצה אחת (כמו בUNIX) שהגדירו לו.

            לי זה נראה בסדר, במבט מהיר ניתן לראות בדיוק מה שUNIX רואה וגם לאפשר למשתמש להגביל אף יותר את הגישה לקבציו עם יותר גמישות למי לתת את הגישה.

            זה נראה לי יותר עניין של POLICY.

            כמובן שאם יש השתוללות בלי הורשה וכד’ אז כמובן אי אפשר לסמוך בגרוש על מערכת כזאת.

          2. אני חושב שהכי פשוט לענות על זה בדוגמא. הנה הצורה שבה אתה רואה את הפרטים על קובץ ביוניקס:

            -rw-rr 1 sun sun 9612 2005-03-05 19:51 match.c

            השורה הנ"ל מכילה את כל המידע שצריך על הקובץ, החל בשם, גודל, בעלים, הרשאות, סוג… הכל.

            מה שיותר טוב, בגלל שמדובר בשורה אחת קומפקטית, אתה מקבל את כל הפרטים האלה בכל פעם שאתה מבקש את רשימת הקבצים. ההרשאות נמצאות קרוב לעין וקרוב ללב. זה לא קשור למדיניות של מערכת, או לשאלה אם משתמש בחר ללכת לפיה או לא.

            המקבילה החלונאית דורשת, במקרה הטוב, שלוש לחיצות עכבר מעבר למה שאתה עושה בצורה יום-יומית.

            שחר

          3. יש בזה משהו. הפשטות של העניין ואתה בהחלט צודק זה יותר מאובטח.

            למרות זאת, כמשתמש, הרבה פעמים רציתי לאפשר לקבוצת אנשים ספציפית לצפות בקבצים בחשבוני מבלי הצורך ללכת לSYSADMIN בשביל להגדיר קבוצה חדשה (דבר מיותר).

            בשורה שהצגתה, אין סתירה שאני אישית אוסיף קבוצת משתמשים שאני בוחר מקבוצת SUN לצפות בקובץ כי הקובץ הוא כבר קריא ע"י העולם. לעומת זאת, אין לי דרך לחסום את שאר המשתמשים בקבוצת SUN. כלומר, אין כאן הרעה ברמת האבטחה ואם הרשאות ACL תמיד יהיו תחת הUNIX אז אין מה לדאוג.

          4. אז בוא נסכם:
            1. השיטה היוניקסית הרבה יותר פשוטה, ובהתאם גם משאירה פחות מקום לטעויות שגורמות לחורי אבטחה.
            2. יש מקרים מסויימים שבהם הרבה יותר קל להגדיר את מדיניות האבטחה הרצויה באמצעות ACL, בזכות המורכבות הנוספת שלהם.

            כל טענתי היא שאותם מקרים שבהם 2 גורם ל-ACL להיות עדיפים לא מספיק נפוצים כדי לעשות אותם שווים את המחיר הדיי כבד שאתה צריך לשלם עליהם בגלל 1. המחקר שציטטתי בפוסט עצמו בא לחזק את הנקודה.

            שחר

כתיבת תגובה

האימייל לא יוצג באתר. שדות החובה מסומנים *

Bear