אלה המוני אחדות ואפסים.
זה מה שמכונה "מידע בינארי".
ככה מחשבים מדברים.
ככה הם מאחסנים מידע.
ככה מחשבים חושבים.
ככה מחשבים עושים
את כל מה שמחשבים עושים.
אני חוקר בתחום הסייבר (אבטחת מחשבים),
כלומר, העבודה שלי היא לשבת עם המידע הזה
לנסות למצוא בו הגיון
ולנסות להבין מה אומרים כל האחדות והאפסים האלה.
לרוע מזלי, לא מדובר
רק באחדות ובאפסים שעל המסך כאן,
ולא רק בעמודים ספורים של אחדות ואפסים.
מדובר במיליארדים רבים
של אחדות ואפסים,
יותר מכפי שמישהו מסוגל לתפוש.
מרגש ככל שזה נשמע,
כשהתחלתי בתחום הסייבר --
[צחוק] --
כשהתחלתי בתחום הסייבר,
לא הייתי בטוח אם חיטוט באחדות ובאפסים
הוא מה שארצה לעשות כל חיי,
כי אבטחת המחשבים, כפי שדמיינתי אותה,
היתה למנוע מווירוסים לחדור למחשב של סבתא שלי, [צחוק]
למנוע פריצה לאתרי "מייספייס",
ואולי, אולי בשיא הצלחתי,
למנוע גניבת מידע של כרטיס אשראי.
אלה דברים חשובים,
אבל לא כך רציתי לבלות את חיי.
אבל אחרי 30 דקות עבודה
כקבלן הגנה,
גיליתי במהרה שהמושג שלי על אבטחת מחשבים
היה קצת מוטעה.
למעשה, בעיני האחראים על הבטחון הלאומי,
מניעת חדירה של וירוסים למחשב של סבתא שלי
היתה בעדיפות נמוכה להפתיע. [צחוק]
והסיבה לכך היא שאבטחת המחשבים
היא הרבה יותר גדולה מכל הדברים האלה.
אבטחת המחשבים היא חלק בלתי-נפרד מחיי כולנו,
כי המחשבים הם חלק בלתי-נפרד מחיי כולנו,
אפילו מחייו של מי שאין לו מחשב.
המחשבים שולטים בכל דבר במכונית,
החל מהאיכון הלווייני ועד כריות האוויר.
הם שולטים בטלפונים.
הם הסיבה לכך שאתם יכולים לחייג למוקד החירום
ולשמוע מישהו בצד השני.
הם שולטים בכל התשתיות של הארץ שלנו.
הם הסיבה לכך שיש לנו חשמל,
חימום, מים זכים, מזון.
המחשבים שולטים בציוד הצבאי שלנו,
מפירי טילים ולוויינים
ועד רשתות הגנה גרעינית.
כל הדברים האלה מתאפשרים
הודות למחשבים,
ולכן, הודות לאבטחת המחשבים,
כשדברים משתבשים,
פגיעה באבטחת המחשבים עלולה למנוע את כל אלה.
אבל כאן אני נכנס לתמונה.
חלק גדול מעבודתי הוא להגן על כל הדברים האלה
ולדאוג שימשיכו לפעול,
אבל מידי פעם, חלק מעבודתי הוא לפרק אחד מהדברים האלה,
כי אבטחת מחשבים איננה רק הגנה,
אלא גם התקפה.
אנו נכנסים לעידן שבו אנו כבר מדברים
על כלי-נשק ממוחשבים.
למעשה, הפוטנציאל הטמון במתקפה ממוחשבת הוא כה גדול,
עד כי אבטחת המחשבים נחשבת לתחום לחימה בפני עצמו.
לוחמה
אינה דבר רע כשלעצמו.
מצד אחד זה אומר חזית חדשה לגמרי
שבה עלינו להגן על עצמנו,
אבל מצד שני,
זה אומר גם דרך חדשה לגמרי של התקפה,
דרך חדשה לגמרי למנוע מאנשים רעים
לעשות דברים רעים.
הבה נראה דוגמה לכך,
דוגמה תיאורטית לגמרי.
נניח שאיזה מחבל רוצה לפוצץ בניין,
ובעתיד הוא ירצה לעשות זאת שוב ושוב
הוא לא חייב להימצא באותו בניין בעת הפיגוע;
הוא ישתמש בטלפון נייד כשלט-רחוק.
פעם, הדרך היחידה שעמדה לרשותנו
כדי לעצור את המחבל הזה
היתה מטר כדורים ומרדף מכוניות,
אבל זה כבר לא בהכרח כך.
אנו נכנסים לעידן שבו ביכולתנו לעצור בעדו
בלחיצת כפתור
ממרחק אלפי קילומטרים,
כי בין אם הוא ידע או לא,
ברגע בו הוא החליט להשתמש בטלפון הנייד שלו
הוא נכנס לעולם הממוחשב.
התקפה ממוחשבת מיומנת מסוגלת לפרוץ לטלפון שלו,
לנטרל את הגנות הסוללה שלו נגד עומס-יתר,
לחולל עומס-יתר קיצוני במעגלים,
לגרום לסוללה להתחמם מדי ולהתפוצץ.
אין כבר טלפון, אין שלט-רחוק,
ואולי גם אין מחבל
והכל בלחיצת כפתור
ממרחק אלפי קילומטרים.
איך זה עובד?
הכל מתמצה באחדות ובאפסים האלה.
המידע הבינארי הוא זה שגורם לטלפונים שלכם לפעול,
ובשימוש נכון, בכוחו גם לגרום להם להתפוצץ.
אז כשמסתכלים על אבטחת המחשבים מנקודת-השקפה זו,
בילוי החיים בחיטוט במידע בינארי
מתחיל להיראות מלהיב למדי.
אבל הנה המילכוד: זה קשה,
מאד מאד קשה,
וזו הסיבה:
חישוב על כל מה שיש לכם בטלפון הנייד.
התמונות שצילמתם.
המוסיקה שאתם מאזינים לה.
רשימת אנשי הקשר,
הודעות הדוא"ל, וכנראה איזה 500 יישומונים
שבחיים לא השתמשתם בהם, [צחוק]
ומאחורי כל אלה - התוכנה, הקוד,
ששולטים בטלפון שלכם,
ובמקום כלשהו, קבור בעומק הקוד הזה,
יש קטע זעיר ששולט בסוללה שלכם,
ואותו בעצם אני מחפש,
אבל כל זה הוא סתם אוסף של אחדות ואפסים,
שכולם מעורבבים ביחד.
באבטחת המחשבים אנו מכנים זאת "למצוא מחט בערימת מחטים",
כי הכל נראה די דומה.
אני מחפש יחידת קוד מרכזית אחת,
אבל היא מתמזגת עם כל יתר הדברים.
אז בואו נעזוב את המצב התיאורטי
שבו אנו גורמים לטלפון של המחבל להתפוצץ,
ונראה משהו שקרה לי.
לא משנה מה אני עושה,
העבודה שלי תמיד מתחילה בכל שאני יושב
עם ערימה שלמה של מידע בינארי,
ואני תמיד מחפש פיסת קוד מרכזית
כדי לבצע משהו ספציפי.
במקרה זה חיפשתי
פיסת-קוד מאד מתקדמת ועתירת-ידע
שידעתי שאוכל לפרוץ,
אבל היא היתה קבורה
בתוך מיליארדי אחדות ואפסים.
למזלי הרע,
לא ידעתי מה בדיוק לחפש.
לא ידעתי איך בדיוק זה נראה,
מה שהקשה עלי מאד למצוא את זה.
כשעלי לעשות דבר כזה, אני צריך, בעקרון,
לבחון כל מיני קטעים
של מידע בינארי כזה,
לנסות לפענח כל אחת מהן ולראות אם היא זו
שאני מחפש.
אז אחרי זמן-מה חשבתי שמצאתי את הקטע שחיפשתי.
חשבתי שאולי זה הקטע הנכון.
הוא די התאים, אבל לא הייתי לגמרי בטוח.
לא יכולתי לקבוע מה ייצגו אותם אחדות ואפסים.
אז השקעתי זמן בנסיון לחבר ביניהם,
אבל לא הצלחתי מי יודע מה
ולבסוף החלטתי
שאני מוכרח להצליח בזה.
אני אבוא לעבודה בסוף השבוע,
ולא אפסיק
עד שאגלה מה זה מייצג.
אז זה מה שעשיתי. הגעתי לעבודה בבוקר יום א',
ואחרי כ-10 שעות היו בידי כל פיסות התצרף.
אלא שלא ידעתי איך הן משתלבות.
לא ידעתי מה המשמעות של האחדות והאפסים האלה.
כשהשעון מנה 15 שעות,
התחלתי לקבל תמונה טובה יותר מה היה שם,
אבל כירסם בי חשד
שהדבר בו אני מתבונן
בכלל לא קשור למה שחיפשתי.
אחרי 20 שעות הפיסות החלו להשתלב
לאט לאט -- [צחוק]
וכעת הייתי בטוח למדי שאני בכיוון הלא-נכון.
אבל לא התכוונתי לוותר.
אחרי 30 שעות במעבדה,
הבנתי בדיוק במה אני מתבונן,
וצדקתי. זה לא היה מה שחיפשתי.
הקדשתי 30 שעות לשילוב
של אחדות ואפסים שיוצרים תמונה של חתלתול.
[צחוק]
בזבזתי 30 שעות מחיי בחיפוש אחר החתלתול הזה
שלא היה קשור בשום אופן
למה שניסיתי להשיג.
אז הייתי מתוסכל, הייתי מותש.
אחרי 30 שעות במעבדה ודאי גם הסרחתי,
אבל במקום ללכת הביתה
ולהגיד שנכשלתי, עצרתי
ושאלתי את עצמי מה השתבש כאן.
איך יכולתי לעשות טעות כה מטופשת?
אני ממש טוב בעבודה הזאת.
אני מתפרנס מכך.
אז מה קרה?
חשבתי לעצמי, שכאשר בוחנים מידע ברמה הזאת,
קל מאד ללכת לאיבוד,
קל להפסיק לראות את היער מרוב עצים.
קל לתעות במבוך
ולבזבז כמויות עצומות של זמן
על הדבר הלא-נכון.
אבל אז היתה לי התגלות.
אנו הסתכלנו על המידע בצורה מוטעית לגמרי
כבר מההתחלה.
ככה מחשבים חושבים: באחדות ואפסים.
אבל אנשים לא חושבים כך.
אלא שאנו ניסינו לאלץ את המוח שלנו
לחשוב כמו המחשב
כדי שנוכל להבין את המידע הזה.
במקום להתאים את המוח שלנו לבעיה,
היה עלינו לגרום לבעיה להתאים למוח שלנו,
כי למוח שלנו יש פוטנציאל עצום
לנתח כמויות-ענק של מידע,
אבל לא בצורה הזאת.
מה אם נוכל לנצל את הפוטנציאל הזה
בכך שפשוט נתרגם זאת לסוג המידע הנכון?
אז עם הרעיון הזה,
יצאתי בריצה ממעבדת המרתף שבעבודה,
אל מעבדת המרתף בבית,
שנראית דומה לה למדי,
כשההבדל העיקרי הוא, שבעבודה,
אני מוקף בדברים של סייבר,
וכנראה שהסייבר עצמו היה הבעיה במצב הזה.
בבית אני מוקף בכל יתר הדברים שלמדתי.
אז עברתי על כל ספר שיכולתי למצוא,
על כל רעיון שאי-פעם נתקלתי בו,
כדי לראות אם אפשר לתרגם בעיה
מתחום אחד לתחום אחר, שונה לגמרי.
השאלה הגדולה היתה: למה כדאי לתרגם את זה?
מה המוח שלנו עושה באופן טבעי ומושלם
שבו ניתן להשתמש?
התשובה שלי היתה כושר הראייה.
יש לנו יכולת עצומה לנתח מידע חזותי.
אנו מסוגלים למזג גוונים ודרגות בהירות,
כל מיני אותות כאלה,
לתמונה מגובשת אחת של העולם הסובב אותנו.
זה מדהים.
אז אם נוכל למצוא דרך לתרגם
את הדפוסים הבינאריים האלה לאותות חזותיים,
נוכל באמת לשחרר את עוצמת מוחנו
לצורך עיבוד הדברים האלה.
אז התחלתי להתבונן במידע הבינארי
ושאלתי את עצמי מה אני עושה
כשאני נתקל לראשונה במשהו כזה?
והדבר הראשון שאני רוצה לעשות,
השאלה הראשונה שאני רוצה לשאול
היא: "מה זה?"
לא איכפת לי מה זה עושה או איך זה עובד.
אני רק רוצה לדעת מה זה.
והדרך בה אני יכול לגלות מה זה
היא להתבונן בגושים,
גושים רציפים של מידע בינארי,
ואני מתבונן ביחסים שבין הגושים האלה.
כשיש לי מספיק רצפים כאלה,
אני מתחיל לקבל מושג מדויק
מהו ודאי המידע הזה.
אז כעת הבה נחזור
לדוגמה של פיצוץ הטלפון של המחבל.
ככה נראה טקסט באנגלית
ברמה הבינארית.
ככה נראית רשימת אנשי-קשר
אילו בדקנו אותה.
קשה מאד לנתח את זה ברמה הזאת,
אבל אם ניקח את אותם גושי מידע בינארי
שאני מנסה למצוא, ונתרגם אותם
לייצוג חזותי,
נתרגם את היחסים ביניהם,
זה מה שנקבל.
ככה נראה טקסט באנגלית
מנקודת-מבט חזותית מופשטת.
לפתע פתאום אנו רואים את אותו המידע
שהיה קודם בצורת אחדות ואפסים,
בצורה שונה לחלוטין,
צורה שאנו יכולים לתפוש מיד.
אנו רואים כאן מיד את כל הדפוסים.
אני מזהה תוך שניות את הדפוסים כאן,
אבל יידרשו לי שעות וימים לזהות אותם
באחדות ואפסים.
כל אחד יכול ללמוד תוך דקות
מה מייצגים כאן הדפוסים האלה,
אבל יידרשו לו שנים של נסיון-סייבר
ללמוד מה אותם הדפוסים מייצגים
באחדות ואפסים.
הקטע הזה נוצר
ע"י אותיות קטנות אחרי אותיות קטנות
ברשימת אנשי הקשר.
כאן זו אות גדולה אחרי אות גדולה,
אות גדולה אחרי אות קטנה, אות קטנה אחרי אות גדולה.
זה נוצר ע"י תווי רווח, זה נוצר ע"י תווי "אנטר".
אפשר לעבור על כל פרט ופרט של המידע הבינארי תוך שניות,
לעומת שבועות וחודשים ברמה הזאת.
ככה נראית תמונה
מהטלפון הנייד שלכם.
אבל ככה היא נראית
כהפשטה חזותית.
ככה נראית המוסיקה שלכם,
אבל זאת ההפשטה החזותית שלה.
הכי חשוב, מבחינתי,
כך נראה הקוד בטלפון הנייד שלכם.
ואותו אני מחפש, בסופו של דבר,
אבל זאת ההפשטה החזותית שלו.
אם אוכל למצוא את זה, אוכל לגרום לטלפון להתפוצץ.
אני יכול לחפש את זה במשך שבועות
באחדות ואפסים,
אבל אני אזהה זאת תוך שניות
בהפשטה חזותית כזאת.
אחד הדברים הכי מעניינים בכל זה
הוא שזה נותן לנו דרך חדשה לגמרי להבין
מידע חדש, דברים שלא ראינו לפני כן.
אז אני יודע איך נראית אנגלית ברמה הבינארית,
ואני יודע איך היא נראית בהפשטה חזותית,
אבל מעולם לא ראיתי רוסית בינארית.
יידרשו לי שבועות רק כדי להבין
מה אני רואה ברמה הגולמית של אחדות ואפסים,
אבל היות שהמוח שלנו מסוגל לראות מיד
ולזהות את הדפוסים העדינים האלה
שבהפשטות החזותיות האלו,
הרי שאנו יכולים באופן בלתי-מודע ליישם זאת
במצבים חדשים.
אז כך נראית רוסית
בהפשטה חזותית.
העובדה שאני יודע איך נראית שפה אחת,
מאפשרת לי לזהות שפות אחרות
אפילו אם הן זרות לי.
כך נראה צילום,
וכך נראה קובץ גרפי.
כך נראה הקוד בטלפון שלכם,
וכך נראה הקוד במחשב שלכם.
מוחנו מסוגל לזהות דפוסים אלה
כפי שלא היינו מצליחים
מתוך התבוננות באחדות ובאפסים גולמיים.
אבל אנו רק מגרדים את פני השטח
של מה שאפשר להשיג בגישה הזאת.
רק התחלנו לשחרר את היכולות האלה של מוחנו
בעיבוד מידע חזותי.
אם ניקח את התפישות האלה ונתרגם אותן
לשלושה מימדים,
נגלה דרכים חדשות לגמרי להבנת מידע.
נוכל תוך שניות לזהות כאן כל דפוס.
נוכל לראות את הצלב הקשור לקוד.
נוגל לראות קוביות שקשורות לטקסט.
נוכל אפילו לזהות את הפריטים החזותיים הזעירים ביותר.
דברים שהיו נדרשים לנו שבועות וחודשים
כדי לאתר באחדות ואפסים,
נגלים מיד לעין
בסוג כלשהו של הפשטה חזותית,
וככל שנמשיך לעבור על זה
ולערום עוד ועוד מידע,
נגלה שאנו מסוגלים לעבד
מיליארדי אחדות ואפסים
תוך שניות
פשוט בכך שנשתמש ביכולת הטבעית של מוחנו
לנתח דפוסים.
אז זה נחמד ומועיל,
אבל זה רק אומר לי על מה אני מסתכל.
אז בשלב זה, על סמך דפוסים חזותיים,
אני מסוגל למצוא את הקוד בטלפון.
אבל אין בכך די כדי לפוצץ סוללה.
הדבר הבא שעלי למצוא הוא הקוד
ששולט בסוללה, אבל אז אנו חוזרים
לבעיית המחט בערימת המחטים.
הקוד נראה דומה למדי לכל יתר הביטויים
במערכת.
אז ייתכן שלא אצליח למצוא את הקוד ששולט בסוללה,
אבל יש המון דברים דומים לו.
יש קודים ששולטים במסך,
בלחצנים, במיקרופון,
אז אפילו אם לא אצליח לאתר את הקוד של הסוללה,
בטוח שאצליח למצוא אחד מהדברים האלה.
אז השלב הבא בתהליך הניתוח הבינארי שלי
הוא לבחון קטעי מידע שדומים זה לזה.
מאד מאד קשה לעשות זאת ברמה הבינארית,
אבל אם נתרגם את הזהויות האלה להפשטה חזותית,
אני לא צריך אפילו לחטט בנתונים הגולמיים.
עלי רק להמתין עד שהתמונה תתבהר
כדי לראות אם יש לי קטעים דומים.
אני עוקב אחרי חוטי זהות אלה כמו אחרי נתיב פירורי-לחם
כדי למצוא בדיוק את מה שאני מחפש.
אז בשלב הזה בתהליך
איתרתי את הקוד
שאחראי לשליטה בסוללה שלכם,
אבל זה עדיין לא מספיק כדי לפוצץ טלפון.
הפיסה האחרונה בתצרף
היא להבין איך הקוד הזה שולט בסוללה שלכם.
לשם כך עלי לזהות
יחסים סמויים ומפורטים מאד
בתוך המידע הבינארי הזה,
וגם את זה קשה מאד לעשות כשבוחנים אחדות ואפסים.
אבל אם נתרגם את המידע הזה לייצוג פיזי
אפשר לשבת בנוחות ולהשאיר את כל העבודה הקשה לקליפת הראייה במוח.
היא מסוגלת למצוא את כל הדפוסים המפורטים,
את כל הקטעים החשובים, למעננו.
היא יכולה למצוא איך בדיוק קטעי הקוד הזה
פועלים במשולב כדי לשלוט בסוללה.
אפשר לעשות את כל זה תוך שעות ספורות,
בעוד שאותו תהליך דרש בעבר חודשים.
כל זה טוב ויפה
כשמדובר בתרחיש תיאורטי של פיצוץ טלפון של מחבל.
רציתי לגלות אם זה יצליח
בעבודה היומיומית שלי.
אז השתעשעתי לי עם רעיונות כאלה
בחלק מהמידע שבחנתי בעבר,
ושוב, ניסיתי למצוא
קטע קוד מפורט וספציפי מאד
בתוך גוש מסיבי של מידע בינארי.
אז בחנתי את זה ברמה הזו,
במחשבה שאני מתבונן בדבר הנכון,
אבל גיליתי
שאין כאן הקישוריות שהייתי מצפה למצוא
בקוד שאני מחפש.
למעשה, בכלל לא ידעתי מה זה,
אבל כשעליתי רמה ובחנתי את הזהויות שבתוך הקוד,
ראיתי שאין בו זהויות כמו בכל קוד אחר.
אולי אני בכלל לא מסתכל על קטע קוד.
למעשה, מנקודת המבט הזאת,
יכולתי לקבוע שזה איננו קוד.
זאת תמונה כלשהי.
ומכאן אני יכול לראות
שזאת לא סתם תמונה, אלא צילום.
משהתברר לי שזה צילום,
עומדות לרשותי עשרות טכניקות תרגום בינארי
כדי להפוך מידע זה לחזותי ולהבינו,
אז אנו יכולים תוך שניות לקחת את המידע הזה,
להעביר אותו דרך עוד עשר טכניקות תרגום חזותי
כדי לגלות על מה אנו בעצם מסתכלים.
ראיתי -- [צחוק]
זה שוב החתלתול המעצבן הזה.
כל זה התאפשר
הודות לכך שיכולנו למצוא דרך
לתרגם בעיה קשה מאד
למשהו שמוחנו מסוגל לעשות באופן טבעי ביותר.
אז מה זה אומר?
מבחינת החתלתולים זה אומר
שהם כבר לא יכולים להסתתר בין האחדות והאפסים.
מבחינתי זה אומר לא עוד סופי-שבוע מבוזבזים.
מבחינת אבטחת המחשבים זה אומר שיש לנו שיטה חדשה ורדיקלית
להתמודדות עם הבעיות הכי בלתי-אפשריות.
זה אומר שיש לנו נשק חדש
בזירה המתפתחת של הלוחמה הממוחשבת,
אבל מבחינת כולנו,
זה אומר שמהנדסי אבטחת המחשבים
מצוידים כעת ביכולת להגיב ראשונים
במצבי חירום.
כשכל שניה קובעת,
גילינו את האמצעים כיצד לעצור את הרעים.
תודה לכם.
[מחיאות כפיים]