אשליית אבטחת מידע

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

רוב העסקים והחברות עובדים בדיוק באותה שיטה על מנת להגן על עצמם: חומת אש כלשהי בחברה, גישה מבחוץ (אם תינתן) רק דרך VPN, ובמחשבים עצמם מותקן אנטי-וירוס/"חומת אש" של ספק כלשהו (קספרסקי, סימנטק, ועוד), ואם מנהל הרשת לא עצלן הוא יעדכן אוטומטית את העדכונים שמיקרוסופט שולחת בשרתים ובתחנות. בחלק מהחברות ינתן למשתמשים האפשרות להשתמש ב-Admininistrator המקומי, ובחלק מהמקומות זה יאסר והרשאות יחולקו לפי צרכים. בחברות גדולות מבחינת דפדפן אינטרנט מותקן אקספלורר 6 או 7 והוא הדפדפן העיקרי שאיתו עובדים כדי לא לשבור את התאימות לאפליקציות Web הפנימיות (אם כי יותר ויותר חברות משתמשות באקספלורר 8, לא בגלל רצון עז לשדרג דפדפן, אלא בגלל הסיבה שזה מה שמגיע עם Windows 7).

אסתכן ואומר: ב-90% מהמקומות זו הקונפיגורציה פחות או יותר.

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

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

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

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

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

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

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

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

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

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

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

  • בוא נאמר שאני צריך להיכנס ל-Exchange של החברה (הרי המייל יושב בשרתים, הוא לא נמחק מהשרת). הרישום של השם משתמש וסיסמא נמצאים ב-Registry וקל מאוד למצוא היכן (לא צריך Administrator לקרוא את זה, לכל משתמש יש הרשאת Read Only, ומכיוון שאיני הולך לשנות את הערך, אני לא צריך לכתוב). הסיסמא כמובן מוצפנת, אבל ב-4 שורות קוד (ספרתי) אפשר להפוך אותה לטקסט פשוט. מכאן מה שצריך זה להתחבר לשרת דואר ולשאוב את הדואר, ולא חסר API לשם כך.
  • אין לי אפשרות להיכנס לשרת מייל? אוקיי. אני יכול ליצור ZIP לקובץ PST ולהתחיל להעביר אותו "בתשלומים" דרך ה-Web. אם אעביר אותו בפעם אחת, מנהל הרשת עלול לעלות על כך, ולכן אעביר כל 5 דקות חלק (נניח חצי מגה) של ה-ZIP דרך פורט 80 או דרך הפרוקסי של החברה (בהתאם ל-Registry של החיבור לאינטרנט) בצורה מספיק חכמה כדי שימשיך להעביר גם לאחר שהמחשב כובה והודלק למחרת.
  • אחרי שיש לי את הקובץ, אני יכול כמובן לפרוס ולהנות מהמיילים, אבל אני יכול להמשיך מכאן ולבנות לי מעין Client שיושב במחשבו של הנציג וסרבר שיושב בשרת Web במחשוב ענן. אני מעוניין לראות מה יש בכונן בתיקיה מסויימת? אוכל לשלוח פקודת dir, ה-client יקבל את הפקודה, יבצע וישלח לי אותה בחזרה דרך השרת Web.
  • ואפשר לעשות עוד הרבה דברים….

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

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

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

סוף סימולציה.

אז איך אפשר להתגונן מהדברים האלו? אפשר לעשות כמה דברים:

  • לא סומכים רק על עדכונים. ישנם לא מעל אתרים המפרסמים Disclosure על פריצות חדשות בכל מערכות ההפעלה ואפליקציות. כל מה שצריך זה להירשם ולעקוב אחר העדכונים והכי חשוב ליישם את ה-Work-around שאותן חברות נותנות עד שיצא Patch תיקון. הערכה שלי: 90% מהחברות בארץ לא עושות זאת.
  • הטמעת פתרונות Packet Inspection שיודעות לעשות אנליזה לפאקטים שיוצאים (במיוחד שיוצאים). כלי כזה יכול לעצור משלוח חלקים מאותו קובץ ZIP שאני שולח כמו בסימולציה.
  • פתרון לא כל כך מקובל, אבל חברות גדולות יכולות להכתיב אותו: לקוח רוצה לשלוח חומר? הלקוח יכול לגשת לאתר החברה ו"להדביק" את החומר בדף מיוחד (לשם כך יש את TinyMCE ואחרים המאפשרים הדבקת טקסט עשיר). כך אפשר לשים קורות חיים, הצעות ועוד מבלי לתת לסקריפטים להיכנס פנימה.
  • יישום מנגנון שאינו מאפשר לשום סקריפט לרוץ מתוך קובץ שהתקבל מבחוץ. אל תסמכו על הכלים של מיקרוסופט שיעצרו את זה.
  • הסברה לעובדים: מקבלים מייל "חתוך", מייל מעמית לעבודה עם הצמדה בלי שום הסבר מלווה? שישלחו את המייל לצוות ה-IT שיבדקו אותו, וליתר בטחון תרימו טלפון לאותו עמית ושאלו אותו אם הוא שלח את אותו מייל. אם הוא לא שלח, מישהו מנסה לחדור אליכם.
  • כדאי להסביר לנציגים להיות חשדנים: לא לתת את המחשב למישהו שעכשיו פגשתם.
  • בנקים: בנק גדול מאוד חשוף לטריקים האלו, ואחד מהניתובים בתוך רשימת הניתוב ניתן לצאת דרכה לרשת גם מהמחשבים של הפקידים בבנק. תארו לכם אפליקציה כמו שתיארתי, רק במקום מייל, היא תעשה דברים אחרים, והיא יכולה להוציא ולהכניס מידע. חושבים שאני מדמיין? אני לא. אני רומז לבנק מסויים שדיברתי עליו בעבר שכדאי שיעברו מחדש על טבלת הניתוב שלהם.

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