מיקרוסופט פועלת להביא תמיכה מורחבת של מסנן מנות של Berkeley (eBPF) ל-Windows

סמל זמן קריאה 2 דקות לקרוא


קוראים עוזרים לתמוך ב-MSpoweruser. אנו עשויים לקבל עמלה אם תקנה דרך הקישורים שלנו. סמל טיפים

קרא את דף הגילויים שלנו כדי לגלות כיצד תוכל לעזור ל-MSPoweruser לקיים את צוות העריכה קראו עוד

דוחות ZDNet שמיקרוסופט פועלת להביא את כלי האבטחה המורחב של Linux Berkeley Packet Filter (eBPF) ל-Windows 10.

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

עם זאת, העבודה עשויה להיות שווה את זה, מכיוון ש-eBPF נמצא בשימוש נרחב בסינון, ניתוח וניהול רשתות וגם עבור סינון שיחות מערכת ומעקב אחר ההקשר של תהליך ומהווה את הבסיס ליישומי אבטחה מרובים כגון Cilium, Falco ו-Tracee; תוכניות תצפית של Kubernetes כמו Hubble ו-Pixe, ושרשרת כלים כמו Clang.

פרויקט ebpf-for-windows נועד לקחת מספר פרויקטים קיימים של eBPF בקוד פתוח ומוסיף את ה"דבק" כדי לגרום להם לרוץ על Windows.

כפי שמוצג בתרשים, ניתן להשתמש בשרשרות כלים קיימות של eBPF (clang וכו') ליצירת eBPF bytecode מקוד מקור בשפות שונות. ניתן לצרוך קוד בייט על ידי כל יישום, או באמצעות כלי שורת הפקודה Netsh, המשתמשים בספרייה משותפת שחושפת ממשקי Libbpf API, אם כי זה עדיין בתהליך.

קוד byte eBPF נשלח למאמת סטטי (המאמת PREVAIL) שמתארח בתהליך מוגן במצב משתמש (סביבת אבטחה של Windows המאפשרת לרכיב ליבה לתת אמון בדמון במצב משתמש החתום על ידי מפתח שהוא סומך עליו). אם ה-bytecode עובר את כל בדיקות המאמת, ניתן לטעון אותו לתוך מתורגמן (מ-uBPF בהקשר של ביצוע מצב ליבה), או להידור של JIT (באמצעות מהדר uBPF JIT) ולטעון אותו קוד מקורי לביצוע מצב הקרנל. הקשר (אך עיין בשאלות הנפוצות בתחתית לגבי HVCI).

תוכניות eBPF המותקנות בהקשר הביצוע של מצב ליבה יכולות להיצמד ל-hooks שונים (כרגע שני הוקים עד כה: XDP ו-socket bind hook) ולקרוא ל-API של עוזרים שונים שנחשפו על ידי shim eBPF, אשר עוטפת באופן פנימי ממשקי API ציבוריים של ליבת Windows, מה שמאפשר את שימוש ב-eBPF בגרסאות קיימות של Windows. עוד ווים ועוזרים יתווספו עם הזמן.

התוצאה הסופית תהיה סביבת אירוח ספציפית ל-Windows עבור eBPF אשר תאפשר למפתחי Windows להשתמש בתוכנות eBPF בקוד פתוח ללא צורך בקידוד מחדש.

בדוק פרויקט ebpf-for-windows ב-GitHub כאן.

עוד על הנושאים: eGMP, מיקרוסופט, Windows 10

השאירו תגובה

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