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

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

Sandbox2 ו-Sandbox API הם שני מוצרים שפותחו על ידי מחלקת ארגז החול של צוות האבטחה של Google.

המוצר תיאור תרחיש לדוגמה
ארגז חול שימוש בארגז חול של Linux באמצעות מרחבי שמות, מגבלות משאבים ומסנני seccomp-bpf syscall. מספקת את טכנולוגיית הבסיס של Sandbox עבור Sandbox API. ארגז חול כללי
gVisor מטמיע קריאות מערכת בתוך ליבת האפליקציה. איבוד קריאות למערכת באמצעות הפרעה או וירטואליזציה של חומרה. ארגז חול כללי
בועות כלי ארגז החול מוטמע עם קבוצת משנה של מרחבי שמות של משתמשים. משמש כמנוע ביצוע, לדוגמה, Flatpak. כלי CLI
מיניאל כלי ארגז החול וההחזקה המשמש ב-ChromeOS וב-Android. המדיניות מספקת קובץ הפעלה וספרייה שאפשר להשתמש בהם כדי להפעיל תוכנות וקוד אחרים וגם להעביר אותם לארגז החול. כלי CLI
NSJail בידוד של תהליכים ב-Linux באמצעות מרחבי שמות, מגבלות משאבים ומסנני seccomp-bpf של syscall. אפשר להשתמש ב-Kapal, שפה מותאמת אישית לדומיין ספציפי, כדי לציין מדיניות מסוג syscall. כלי CLI
API ב-Sandbox שימוש בארגזי חול לשימוש חוזר בספריות C/C++ באמצעות Sandbox2. קוד C/C++
לקוח מקורי הוּצאה משימוש

שיטה מתקדמת להעברת נתונים בינאריים של C/C++ בארגז חול היא הידור של קבוצת משנה מוגבלת של x86 (NaCl)/בייט-קוד של VMVM (PNaCl).

העיצוב שהושפע מהבעיה (WebAssembly) והחלף בו במידה רבה.

קוד C/C++
WebAssembly (WASM) פורמט בינארי של קבצים בינאריים ניידים. המודולים של WASM מופעלים בסביבות זמן ריצה מבודדות. קוד C/C++
RLBox ממשק API של ארגז חול (נכתב ב-C++17), שיכול להשתמש בקצה עורפי להפעלת מגוון יישומים: Native Client, WebAssembly או תהליכים מרוחקים. קוד C/C++
איך להגיע? הפיצ'ר הזה בנוי על גבי בועות, ומספק ארגז חול לאפליקציות של Linux למחשב. נותנת דגש על אריזה והפצה של אפליקציות מקוריות. כאן בוחרים אפליקציה למחשב

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

אתם יכולים להשתמש ב-Sandbox2 כדי להעביר בארגז חול תוכניות שלם או חלקים של תוכניות שנכתבו ב-C/C++.

Sandboxed API (SAPI) הוא פרויקט קוד פתוח לספריות C/C++ של Sandbox. אפשר להשתמש בקלות בספריות עם ארגז חול עם ארגז החול של ה-Sandbox, כדי להסיר את הנטל על פרויקטים עתידיים. לפני ארגז החול API, ארגזי החול שהיו זמינים לשימוש ב-Google מחייבים עבודה נוספת עם כל מופע חדש של פרויקט שמיועד לארגז חול, גם אם נעשה שימוש חוזר באותה ספריית תוכנה. כללי המדיניות של Sandbox2 והגבלות אחרות שחלות על התהליך של ארגז החול צריכים להיות מיושמים מחדש בכל פעם, ומנגנוני חילופי נתונים בין חלקים מהימנים ומהימנים של הקוד צריכים להיות מהתחלה.