לאחרונה הזדמן לנו לנהל שיחת דוא"ל עם אלעד אפרת, כיום מפתח בפרוייקט NetBSD. אלעד היה מוכר פעם בשם 'brian', כאשר הוביל את "Stephanie" - פרוייקט ההקשחה של OpenBSD. מאת אלכסנר צ'אמאנדי, BSDFreak.
עזבת את פרוייקט "Stephanie" לא מזמן. אתה יכול לספק לנו רקע, מהו הפרוייקט הזה למעשה, מדוע ייזמת אותו וכמה זמן הוא נמשך?
"סטפאני" היה הכינוי שהוענק לאוסף 'טלאים' (patches) עבור מערכת ההפעלה OpenBSD שאפשר הוספת תכונות פרטיות (privacy), שלמות קבצים (file integrity) ו-TPE (ר"ת Trusted Path Execution, מושג שנטבע בחלקו על ידי ה-NSA בסדרת ה-rainbow books.) הפרוייקט נוצר כדי לתת למשתמשים מספר שכבות אבטחה נוספות. את הפרוייקט ייסד פיטר וורנר (Peter Werner) בסביבות 2001, על בסיס אוסף טלאי TPE שכתב מייק שיפמן (Mike Schiffman) בשנת 1998. אני הובלתי את הפרוייקט מ-2002. הגירסה האחרונה, עבור OpenBSD 3.6, שוחררה בשלהי 2004.
עושה רושם שהתגלעו לא מעט חילוקי דיעות בינך ובין מפתחי OpenBSD במהלך השנים (כפי שציינת במכתב הפרישה), מה היה המקור למתחים אלו? האם הם תרמו להחלטתך לסגור את הפרוייקט?
הבעיה העיקרית היו דיווחי באגים שקשורים בסטפאני ונשלחו למפתחי OpenBSD, וכתוצאה מכך, הם ביזבזו זמן יקר על טיפול בעיות שלא היו קיימות. בכל מה שקשור לסגירת הפרוייקט הייתה לכך מעט השפעה, אבל זו לא הסיבה העיקרית.
סטפאני הייתה מאז ומעולם אסופת טלאים נפרדת עבור OpenBSD, אבל מעולם לא חלק
ממנה. מדוע?
לדעתי, השקפת העולם של OpenBSD כלפי אבטחה. כאשר "סטפאני" שוחררה, מפתחי OpenBSD לא האמינו ב'שכבות של אבטחה' ורוב המאמצים היו בכיוון של 'קוד בטוח' (code auditing, התמקדות על איכות הקוד ומעבר על הקוד בחיפוש אחר בעיות אבטחה פוטנציאליות). כיום הגישה השתנתה כמובן, ויש לנו יכולות אבטחה מגוונות ב-OpenBSD, מקורם של רבים מהם הוא בפרוייקטים צד-שלישי כמו: PaX, grsecurity ו-OpenWall, אם להזכיר אחדים מהם.
אתה מתחזק את סטפאני כערכת טלאים (patchset) מול גירסה מסויימת של OpenBSD. מדוע לא יצרת גירסה נפרדת של BSD שתכיל את כל השינויים הללו?
אין טעם. התקורה גבוהה מדי עבור ערכת טלאים קטנה שכזו. אני אוהב את הכיוון של OpenBSD, וסטפאני הוסיפה יכולות אמנם, אבל לא יכלה לשמש בסיס לנגזרת נוספת של BSD.
כאשר הובלת את הפרוייקט, האם חשבת על האפשרות להתאים את "סטפאני" למערכות הפעלה נוספות? MirBSD ו-NetBSD יכלו להיות מועמדות מתאימות נוסף על OpenBSD.
תקורת התחזוקה גבוהה. מלבד זאת, הכוונה הייתה לתרום למערכת ההפעלה בה השתמשתי בעיקר באותו הזמן, OpenBSD.
הפכת מפתח NetBSD לאחרונה, ואתה עוסק בשיפורי אבטחה. מדוע השינוי בפוקוס ובמערכת ההפעלה?
פרוייקט NetBSD מאפשר לי להשתתף בפיתוח מערכת הפעלה, ולא רק כתורם צד-שלישי.
מה היו השיקוליים העיקריים שלך כאשר החלטת להצטרך לפרוייקט NetBSD? האם היו לך קשרים עם צוות הפיתוח בעבר?
כן. ל-NetBSD יש 'Verified Exec', דומה ל-'Vexec' של סטפאני, מזה זמן רב. שוחחתי עם המפתח של 'Verified Exec', ברט לימן (Brett Lymn), על נושאים שונים במשך תקופה מסויימת -- איך להגמיש, לשפר ביצועים וכו', עד שהוצע לי להצטרך ל-NetBSD כדי לעזור בפיתוח גם כן. המניע העיקרי הייתה הסביבה -- עד לאחרונה עבדתי על פרוייקטים לבדי. ההצטרפות ל-NetBSD אפשרה לי לעבוד עם אחרים, מה שתרם בצורה משמעותית לניסיון שלי, והיה מהנה מאוד.
באילו תחומים אתה מצפה לעבוד ב-NetBSD, אילו שינויים אתה מעוניין לתרום ומהן המטרות שלך לעתיד?
אני אשתדל להתמקד באבטחה, אבל מהניסיון שלי עד היום, אפשר למצא באגים בכל מקום, בזמן שמדבגים חלקים אחרים. מלבד 'Verified Exec' (או, כפי שהיא מכונה מהיום, אני מניח, 'Veriexec'), אני מתכוון לעבוד קצת על systrace. אני רוצה לעזור גם בנושאי אבטחה כלליים יותר. אני לא רוצה ליצור ציפיות, אבל שיפור האבטחה ב-NetBSD ויצירת כלים למנהל המערכת ולמשתמשים, נמצא גבוה ברשימה הדברים שארצה לעשות בעתיד הרחוק יותר.
אודות המחבר
הראיון עם אלעד התפרסם באתר BSDFreak ותורגם לעברית על ידי אורי שרף עבור לינמגזין, אוקטובר 2005.
עזבת את פרוייקט "Stephanie" לא מזמן. אתה יכול לספק לנו רקע, מהו הפרוייקט הזה למעשה, מדוע ייזמת אותו וכמה זמן הוא נמשך?
"סטפאני" היה הכינוי שהוענק לאוסף 'טלאים' (patches) עבור מערכת ההפעלה OpenBSD שאפשר הוספת תכונות פרטיות (privacy), שלמות קבצים (file integrity) ו-TPE (ר"ת Trusted Path Execution, מושג שנטבע בחלקו על ידי ה-NSA בסדרת ה-rainbow books.) הפרוייקט נוצר כדי לתת למשתמשים מספר שכבות אבטחה נוספות. את הפרוייקט ייסד פיטר וורנר (Peter Werner) בסביבות 2001, על בסיס אוסף טלאי TPE שכתב מייק שיפמן (Mike Schiffman) בשנת 1998. אני הובלתי את הפרוייקט מ-2002. הגירסה האחרונה, עבור OpenBSD 3.6, שוחררה בשלהי 2004.
עושה רושם שהתגלעו לא מעט חילוקי דיעות בינך ובין מפתחי OpenBSD במהלך השנים (כפי שציינת במכתב הפרישה), מה היה המקור למתחים אלו? האם הם תרמו להחלטתך לסגור את הפרוייקט?
הבעיה העיקרית היו דיווחי באגים שקשורים בסטפאני ונשלחו למפתחי OpenBSD, וכתוצאה מכך, הם ביזבזו זמן יקר על טיפול בעיות שלא היו קיימות. בכל מה שקשור לסגירת הפרוייקט הייתה לכך מעט השפעה, אבל זו לא הסיבה העיקרית.
סטפאני הייתה מאז ומעולם אסופת טלאים נפרדת עבור OpenBSD, אבל מעולם לא חלק
ממנה. מדוע?
לדעתי, השקפת העולם של OpenBSD כלפי אבטחה. כאשר "סטפאני" שוחררה, מפתחי OpenBSD לא האמינו ב'שכבות של אבטחה' ורוב המאמצים היו בכיוון של 'קוד בטוח' (code auditing, התמקדות על איכות הקוד ומעבר על הקוד בחיפוש אחר בעיות אבטחה פוטנציאליות). כיום הגישה השתנתה כמובן, ויש לנו יכולות אבטחה מגוונות ב-OpenBSD, מקורם של רבים מהם הוא בפרוייקטים צד-שלישי כמו: PaX, grsecurity ו-OpenWall, אם להזכיר אחדים מהם.
אתה מתחזק את סטפאני כערכת טלאים (patchset) מול גירסה מסויימת של OpenBSD. מדוע לא יצרת גירסה נפרדת של BSD שתכיל את כל השינויים הללו?
אין טעם. התקורה גבוהה מדי עבור ערכת טלאים קטנה שכזו. אני אוהב את הכיוון של OpenBSD, וסטפאני הוסיפה יכולות אמנם, אבל לא יכלה לשמש בסיס לנגזרת נוספת של BSD.
כאשר הובלת את הפרוייקט, האם חשבת על האפשרות להתאים את "סטפאני" למערכות הפעלה נוספות? MirBSD ו-NetBSD יכלו להיות מועמדות מתאימות נוסף על OpenBSD.
תקורת התחזוקה גבוהה. מלבד זאת, הכוונה הייתה לתרום למערכת ההפעלה בה השתמשתי בעיקר באותו הזמן, OpenBSD.
הפכת מפתח NetBSD לאחרונה, ואתה עוסק בשיפורי אבטחה. מדוע השינוי בפוקוס ובמערכת ההפעלה?
פרוייקט NetBSD מאפשר לי להשתתף בפיתוח מערכת הפעלה, ולא רק כתורם צד-שלישי.
מה היו השיקוליים העיקריים שלך כאשר החלטת להצטרך לפרוייקט NetBSD? האם היו לך קשרים עם צוות הפיתוח בעבר?
כן. ל-NetBSD יש 'Verified Exec', דומה ל-'Vexec' של סטפאני, מזה זמן רב. שוחחתי עם המפתח של 'Verified Exec', ברט לימן (Brett Lymn), על נושאים שונים במשך תקופה מסויימת -- איך להגמיש, לשפר ביצועים וכו', עד שהוצע לי להצטרך ל-NetBSD כדי לעזור בפיתוח גם כן. המניע העיקרי הייתה הסביבה -- עד לאחרונה עבדתי על פרוייקטים לבדי. ההצטרפות ל-NetBSD אפשרה לי לעבוד עם אחרים, מה שתרם בצורה משמעותית לניסיון שלי, והיה מהנה מאוד.
באילו תחומים אתה מצפה לעבוד ב-NetBSD, אילו שינויים אתה מעוניין לתרום ומהן המטרות שלך לעתיד?
אני אשתדל להתמקד באבטחה, אבל מהניסיון שלי עד היום, אפשר למצא באגים בכל מקום, בזמן שמדבגים חלקים אחרים. מלבד 'Verified Exec' (או, כפי שהיא מכונה מהיום, אני מניח, 'Veriexec'), אני מתכוון לעבוד קצת על systrace. אני רוצה לעזור גם בנושאי אבטחה כלליים יותר. אני לא רוצה ליצור ציפיות, אבל שיפור האבטחה ב-NetBSD ויצירת כלים למנהל המערכת ולמשתמשים, נמצא גבוה ברשימה הדברים שארצה לעשות בעתיד הרחוק יותר.
אודות המחבר
הראיון עם אלעד התפרסם באתר BSDFreak ותורגם לעברית על ידי אורי שרף עבור לינמגזין, אוקטובר 2005.