|
יש כמובן בעיה קטנה של הסתרת השינוי הזה עד שהוא יופץ לכל העולם או לכל המטוסים. הקוד של מחשב בקרת הטיסה עובר בדיקות רבות, מן הסתם (בעיקר כדי לגלות באגים). השינוי צריך להיות מספיק לא מזיק כדי שלא יגרום לבאגים שיזוהו ורצוי שיהיה מספיק תמים כדי שייחשב לבאג אם הוא יזוהה. ר' תנאי The Underhanded C Contest.
אנחנו לא מכירים את תהליכי הפיתוח של התוכנות האמורות, אבל יש תוכנות עם תהליכי פיתוח יותר שקופים, ולכן אפשר לנסות להסיק גם מדוגמאות שמשם. לא זכור לי כרגע שום מקרה של קוד זדוני שנכנס לתוכנה חופשית דרך תהליך הפיתוח הרגיל. ישנן תוכנות רבות שמפותחות ע"י מפתחים רבים בדרכים שונות. לא מעט מהם נמצאות בשימוש במקומות מעניינים מאוד. היו מקרים שבהם תוקף פרץ לשרתים שמשמשים להפצת קוד וניסה (במקרים ספורים1 גם בהצלחה) להוסיף פרצה לקוד. עדות לכך שזה מסובך עד בלתי אפשרי בתוכנה פופולרית ניתן לראות ש(לפחות לפי כל הבדיקות) לא היה שום ניסיון לשנות קוד של הליבה של לינוקס בפריצה האחרונה לשרת הראשי של kernel.org: זה צריך להיות שינוי קטן שיעבור כמה עיניים בדרך, ואין (ככל הנראה) קיצורי דרך משם להפצות ולמערכות המשתמשים.
דוגמה לסיפור קצת יותר אמתי: OpenBSD [ויקיפדיה] היא מערכת הפעלה דמוית יוניקס אשר יצאו לה מוניטין כמערכת מאובטחת מאוד. המנהיג של פיתוחה הוא המפתח הקנדי תאו דה-ראט (Theo de Raadt, עוד אפרו-אמריקאי). תאו ידוע כאדם דעתני ועקשן. בין השאר הוא תומך נלהב וקיצוני במדיניות של גילוי מלא (Full disclosure [Wikipedia] של בעיות אבטחה. בשל כך הוא התעקש לפרסם בעצמו סיפור שמישהו אחר היה אולי מחליט לא לפרסם ומשאיר לדעוך:
בשנת 2010 פנה אליו מישהו שחברתו מימנה בסביבות שנת 2000 פיתוח חלק מהתמיכה של OpenBSD בהצפנה. אותה חברה סיפקה גם שירותים ל-FBI. הוא טוען שה-FBI שכר אותם להשתיל פירצה לקוד של OpenBSD (בפרט: לחלט מקוד התקשורת - לתמיכה ב-IPSEC [Wikipedia]. אותה תמיכה ב-IPSEC הועברה מאוחר יותר מ-OpenBSD גם לכמה מערכות BSD דומות.
הטענה נשמעה לא סבירה. גם בסריקה מאוחרת יותר לא נמצאה פרצת אבטחה דומה. אפילו לא בקוד הישן של לפני 10 שנים. עלו שתי אפשרויות: או שהסיפור מומצא, או שהיה ניסיון להשתיל, אבל הקוד פשוט לא הצליח להיכנס. אולי הוא לא הוסווה מספיק טוב? ההשערה של דה-ראט היא שהחברה אומנם כתבה פרצות בקוד, אך עבור גרסה פרטית משלה ששימשה כדי לאפשר לממשל האמריקאי (או אחרים) גישה למוצריה. אבל במקרה הזה האפשרות ל-bug היא כבר feature, כך שזו לא דוגמה טובה.
1 ר' לדוגמה תוכנה שלא מתוחזקת כיאות לעומת תוכנות יותר נורמליות.
|
|