MIC

מתוך המכלול, האנציקלופדיה היהודית
קפיצה לניווט קפיצה לחיפוש

MIC (ראשי תיבות של: Mandatory Integrity Control) הוא רכיב ליבה משמעותי במערכות הפעלה ממשפחת Windows (החל מ Vista).‏ MIC מאפשר בידוד תהליכים מבוסס IL (ראשי תיבות של Integrity Levels), כאשר סיווג IL של אובייקט כלשהו במערכת מייצג את רמת המהימנות של האובייקט. מטרתו של מנגנון זה להשתמש במדיניות גישה מוגדרת מראש והאובייקטים המעורבים באופן סלקטיבי כדי להגביל הרשאות גישה בהקשרים (context) שנחשבים לפחות מהימנים, לעומת  הקשרים אחרים, הפועלים תחת אותו חשבון משתמש, אך נחשבים יותר מהימנים.

מימושים

Windows Vista הגדיר ארבע רמות שלמות: נמוך (SID: S-1-16-4096), בינוני (SID: S-1-16-8192), גבוה (SID: S-1-16-12288), מערכת (SID: S-1-16-16384). כברירת מחדל, תהליכים שעלו על ידי משתמש רגיל קיבלו רמת סיווג IL בינוני ולאחר מכן שודרגו, עם מנגנון UAC בהתאם לצורך לרמת IL גבוה.[1] על ידי היכולות של רמות שלמות, MIC מאפשר לסוגים של יישומים להיות מבודדים, להפעיל תרחישים כמו מנגנון 'ארגז חול' ליישומים בעלי פוטנציאל להזיק (כגון יישומי Internet-facing). תהליכים עם IL נמוך בעלי גישה מוגבלת ביחס לתהליכים עם IL גבוה יותר היכן שיש שליטה של בקרת הגישה (Access control enforcement).

לאובייקטים עם רשימות בקרת גישה, כגון אובייקטים בעלי שם, לרבות קבצים, Registry keys ואפילו תהליכים ותהליכונים, יש ערך ב SACL (או System Access Control List) המגדירים את הרשאות הגישה אליהם, או במילים אחרות את מינימום רמת התקינות הנדרשת של תהליך כדי להיות מורשה להשתמש באובייקט. Windows מוודא כי תהליך יכול לכתוב או למחוק אובייקט רק כאשר IL ברמה שווה או גבוהה יותר מאשר מה שצוין על ידי האובייקט (ברשימת בקרת הגישה). בנוסף, מטעמי פרטיות אובייקטים של תהליך עם IL גבוה הם מחוץ לתחום אפילו לקריאה מכל תהליכים בעלי IL נמוך יותר.[2]

כתוצאה מכך, תהליך אינו יכול לקיים אינטראקציה עם תהליך אחר שיש לו IL גבוה יותר. תהליך כזה לא יכול למשל לבצע פעולות כגון להזריק DLL לתוך תהליך עם IL גבוה יותר באמצעות ()CreateRemoteThread[3]  או לשלוח נתונים לתהליך אחר באמצעות הפונקציה ()WriteProcessMemory[4].

הערות שוליים

  1. ^ Steve Riley. "Mandatory Integrity Control in Windows Vista". אורכב מ-המקור ב-2007-09-29. נבדק ב-2007-10-08.
  2. ^ Mark Russinovich. "PsExec, User Account Control and Security Boundaries". אורכב מ-המקור ב-2010-04-15. נבדק ב-2007-10-08.
  3. ^ "CreateRemoteThread Function (Windows)". MSDN. נבדק ב-2007-10-08.
  4. ^ "WriteProcessMemory Function". MSDN. נבדק ב-2007-10-08.
Logo hamichlol 3.png
הערך באדיבות ויקיפדיה העברית, קרדיט,
רשימת התורמים
רישיון cc-by-sa 3.0