מנגנון בידוד דומה ל-plegde מפותח ב-FreeBSD

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

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

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

כדי לפשט את ארגון ההגנה, מסננים מאפשרים לך להימנע מפרטים ברמה של קריאות מערכת בודדות ולתפעל מחלקות של קריאות מערכת (קלט/פלט, קריאת קובץ, כתיבת קובץ, sockets, ioctl, sysctl, תחילת תהליכים וכו') . ניתן לקרוא לפונקציות הגבלת גישה בקוד האפליקציה כאשר פעולות מסוימות מבוצעות, לדוגמה, ניתן לסגור גישה לשקעים ולקבצים לאחר פתיחת הקבצים הדרושים ויצירת חיבור לרשת.

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

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

גם אפשר לארגן בידוד מקונן, כאשר יישומים מושקים יורשים את הכללים שנקבעו על ידי יישום האב, משלימים אותם עם אילוצים נפרדים. חלק מפעולות הקרנל (כלי איתור באגים, POSIX/SysV IPC, PTY) מוגנות בנוסף על ידי מנגנון מחסום המונע גישה לאובייקטי ליבה שנוצרו על ידי תהליכים שאינם התהליך הנוכחי או האב.

תהליך יכול להגדיר את הבידוד שלו על ידי קריאת curtainctl או על ידי שימוש בפונקציות plegde() ו- unveil() המסופקות על ידי ספריית libcurtain, בדומה לאלו של OpenBSD. ה-sysctl 'security.curtain.log_level' מסופק למעקב אחר מנעולים בזמן שהיישום פועל.

הגישה לפרוטוקולי X11 ו-Wayland מופעלת בנפרד על ידי ציון האפשרויות "-X"/"-Y" ו-"-W" בעת הפעלת וילון, אך התמיכה ביישומים גרפיים עדיין לא מיוצבת מספיק ויש לה סדרה של בעיות לא פתורות ( בעיות מופיעות בעיקר בעת שימוש ב-X11, והתמיכה ב-Wayland טובה בהרבה). משתמשים יכולים להוסיף הגבלות נוספות על ידי יצירת קובצי כללים מקומיים (~/.curtain.conf). לדוגמה,

ההטמעה כוללת את מודול mac_curtain kernel לבקרת גישה חובה (MAC), סט תיקונים עבור ליבת FreeBSD עם הטמעת מנהלי התקנים ומסננים נחוצים, ספריית libcurtain לשימוש בפונקציות plegde ונחשפו באפליקציות, וילון השירות, מציג תצורה קבצים, חבילת בדיקות ותיקונים עבור חלק מתוכניות מרחב המשתמש (לדוגמה, כדי להשתמש ב-$TMPDIR כדי לאחד עבודה עם קבצים זמניים). במידת האפשר, המחבר מנסה למזער את מספר השינויים הדורשים תיקון הליבה והיישומים.

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


השאירו את התגובה שלכם

כתובת הדוא"ל שלך לא תפורסם. שדות חובה מסומנים *

*

*

  1. אחראי לנתונים: מיגל אנחל גטון
  2. מטרת הנתונים: בקרת ספאם, ניהול תגובות.
  3. לגיטימציה: הסכמתך
  4. מסירת הנתונים: הנתונים לא יועברו לצדדים שלישיים אלא בהתחייבות חוקית.
  5. אחסון נתונים: מסד נתונים המתארח על ידי Occentus Networks (EU)
  6. זכויות: בכל עת תוכל להגביל, לשחזר ולמחוק את המידע שלך.