כיצד macOS App Sandboxing מגן על משתמשים

Wie macOS App Sandboxing Benutzer schützt
⏱️ 1 min read

הושק בשנת 2007 ונדרש עד 2012, ארגז חול הוא כלי המשמש את macOS כדי להגביל את הנזק שיישום חטוף יכול לעשות. אפל אומרת, “אמנם App Sandbox אינו מונע התקפות נגד האפליקציה שלך, אך הוא ממזער את הנזק שאחד מצליח יכול לעשות. ארגז חול של אפליקציית macOS מגן על המשתמשים על ידי הגבלת כמות הצרות שאפליקציה יכולה לגרום.

מה זה ארגז חול של macOS App?

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

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

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

כיצד פועל ארגז חול של יישומים?

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

אפליקציות יכולות להגיע מחוץ לארגז החול שלך, אך רק באישור מערכת ההפעלה. פתח את תיבת הדו-שיח “שמור ופתח” ב-macOS. היישום, בתוך ארגז החול שלו, אינו יכול לגשת ישירות למשאבי מערכת הקבצים בכונן הקשיח שלך. זה לא יכול, למשל, לצייר חלונית פתוחה ב-“~/Documents”. במקום זאת, על הבקשה לשאול את Powerbox API עם NSOpenPanel ו NSSavePanel שיעורים כדי לגשת ללוח המחוונים.

macos-app-sandboxing-powerbox-design

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

פונקציונליות זו מופעלת על ידי א ימין (באופן ספציפי com.apple.security.files.user-selected.read-write) מפתחי אפליקציות מגדירים זכויות שמצהירות מה אפליקציה עושה. בהתבסס על הזכויות המצוינות, מערכת ההפעלה מאפשרת לאפליקציה רמת פונקציונליות מוגבלת.

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

אפליקציות בארגז חול לעומת אפליקציות שאינן בארגז חול

החל מ-1 ביוני 2012, כל יישומי צד שלישי המופצים דרך Mac App Store חייבים להיות בארגז חול. בעוד ארגז חול מאפשר מגוון רחב של פונקציונליות של יישומים, תגלו שיישומי Mac App Store לרוב מוגבלים יותר מהרכיבים שאינם ארגז חול שלהם. חלק מהמפתחים אפילו מתחזקים שתי גרסאות: אפליקציה מלאה להורדה ישירה וגרסה פשוטה ל-Mac App Store. הודות למורכבות הרבה יותר של פיתוח ארגז חול, הוספת פונקציונליות חדשה לאפליקציה קשה יותר – כלומר, אם הפונקציונליות הזו מותרת על ידי מערכת ההפעלה.

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

macos-security-privacy-permissions-hero

כדי לראות אילו מהאפליקציות שלך נמצאות בארגז חול, פתח את צג הפעילות ולחץ באמצעות לחצן העכבר הימני על כותרות העמודות כדי להוסיף “ארגז חול” לחלון.

macos-app-sandboxing-activity-monitor-view

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

סיכום

למרות שהבטיחו, ארגז החול של יישום macOS לא פעל היטב. זה הגביל את נקודות המכירה הייחודיות של יישומי Mac כגון מהירות ופונקציונליות משופרת. יישומים הפועלים מחוץ לארגז החול הם כמעט תמיד מסוגלים ומהירים יותר. מנקודת המבט של המשתמש החזק הזה, האפליקציות הכי בשימוש שלי אינן בארגז חול. יישומים כמו TextExpander, SnagIt ו-TotalFinder הם חיוניים לעבודה היומיומית שלי. כדי למנוע הימנעות נרחבת דומה, מערכות אבטחה עתידיות זקוקות לגמישות וכוח מאוזנים עם שקיפות.

קרדיט תמונה: אַשׁפָּה

How useful was this post?

Click on a star to rate it!

Average rating 0 / 5. Vote count: 0

No votes so far! Be the first to rate this post.

You may also like...