איך מודדים הצלחה של לינוקס בשולחן העבודה?

רפאל פוגל, במאמר ב-TheMarker, מותח ביקורת על החדירה של לינוקס. מתוך המאמר:

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

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

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

להמשיך לקרוא איך מודדים הצלחה של לינוקס בשולחן העבודה?

מה קורה לכתבים היום?

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

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

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

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

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

עיתונאים הם שליחי האמת מטעם הציבור. כל החטאים, הן חטאי העצלנות והן החטאים המכוונים, הם לא פחות מאשר מעילה בתפקיד. אם לצטט את טרי פרטצ'ט (ציטוט מקורב):
ומה אם אתה חוטא לאמת? מה קורה אז? האם האמת דופקת לך בדלת ואומרת "סליחה, אתה משתמש בשמי לשוא"?

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

שחר

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

ש

"כשל אבטחה חמור התגלה בלינוקס", או שלא כל כך חמור

TheMarker יוצא הבוקר עם הכותרת "כשל אבטחה חמור התגלה בלינוקס". אני לא בטוח מה עומד להיות הקישור המדוייק, אבל יכול להיות שזה (אתר שנקרא nfc. אני לא יודע אם הוא או הטוש הזוהר הם המקור).

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

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

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

ומה קורה אם המאגר נגמר?

בלינוקס יש שתי אופציות. הראשונה היא לחכות עד שיגיע עוד מידע אקראי. השניה היא להשתמש בפונקציות "כמעט אקראיות" (Pseudo random number generators) כדי לקבל רצף של מספרים.

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

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

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

התחומים הם הצפנה (קריפטוגרפיה) ואבטחת מידע.

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

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

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

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

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

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

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

לא נכון.

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

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

לסיכום:
בעיה שצריך לפתור? כן.
בעית אבטחה חמורה? לא.

שחר

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

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

אסור לקרוא slashdot באחד באפריל

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

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

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

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

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

גם לעבוד על אנשים צריך לדעת איך.

שחר