פריצה לעסק שלך .. עם ראוטר בלבד

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

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

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

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

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

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

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

מהרגע שבעל המחשב הנייד התחבר ל-WIFI שלי, הוא מקבל כתובת IP ומיד Redirect בדפדפן שלו לדף "הסכם גלישה" שלי. הדף נראה דף תמים עם הסכם שכולם גוללים למטה ולוחצים אישור.. רק שלאישור לוקח 3 שניות להופיע.

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

שלב ראשון, נבדוק כמה הבחור (או מנהל ה-IT או הסיסטם) היו חכמים והעיפו לו את התוסף JAVA מהדפדפן. לא העיפו? מגניב, רוגלה מיוחדת שלי תותקן בסתר במחשב שלו (אל דאגה, הסקריפט יודע לזהות אם זה מחשב Windows או מק, יש גירסת רוגלה לכולם). אין לו JAVA? לא נורא, נבדוק על המחשב שלו מגוון פריצות חדשות (Zero-day, למה יש שוק שחור של פריצות כאלו?) עד שאצליח להיכנס. הוא לא ירגיש כלום, לי יש 20-30 דקות עד שהוא ילך.

מהרגע שאני בפנים, החגיגה מתחילה. אם הוא משתמש מק והוא משתמש במפתחות כדי להתחבר למכונות אחרות, אני אעתיק את המפתחות מתיקיית ssh., אעתיק את קובץ ה-known_hosts שלו, אחטט לו קצת בתיקיות מסמכים וכו', אעתיק גם את ה-Contacts שלו, כניסות VPN אוטומטיות ועוד. אני גם אעתיק את ה-MAC ADDRESS שלו כדי שאדע לזהות את המחשב שלו.

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

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

חושבים שכל מה שתיארתי כאן הוא דמיוני? תחשבו שוב. כל מה שתיארתי כאן ניתן לביצוע כיום

אז מה ניתן לעשות? ב-2 מילים: להגדיל ראש. להבין שפריצות זה לא רק פורץ משועמם מבחוץ שמנסה לפרוץ את ה-Firewall שלך אלא הרבה מעבר לכך. המחשבים הניידים, הטאבלטים והטלפונים הסלולריים כיום יכולים לשמש כדרך לפרוץ אל העסק שלך, לעשות פילטרינג מורכב יותר למייל שמגיע לא מאנשי הקשר הקבועים כדי למנוע מצבים שמגיעים קבצי מסמכים נגועים שיתנו לחגוג על המסמכים אצלכם, ובקיצור – הפריצות לא יגיעו רק מהאינטרנט, אלא גם מתוך ה-LAN שלך, ואם מישהו לא ידאג לדברים הללו, יהיה מי שינסה להיכנס ולגנוב מסמכים, קוד ודברים אחרים על מנת לסחור בהם ולהעביר אותם למתחרה שלכם או לכל גורם אחר.

כמה מילים על גניבת מספרי אשראי

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

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

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

חברות כרטיסי האשראי

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

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

לקח בערך דקה אחת לקבל אישור. אפילו לא קניתי תעודת SSL ומבחוינת אותה חברת אשראי אני יכול לסלוק כרטיסים בלי שום בעיה ואף אחד לא בודק לי את הקוד, את ה-DB ושום דבר אחר. מבחינתן, כל עוד אני משלם דמי חבר ומשתמש בשרותיהן, אין שום בעיה, ואף אחד לא יבדוק אם אני מאחסן את פרטי כרטיס האשראי כקובץ טקסט, CSV פשוט או כל פורמט שילד בן 6 יכול לקרוא.

רק לאחרונה החלו חברות האשראי להתעקש על תקן PCI, אבל אם אתם חושבים שזה יעזור, טעות בידכם ותיכף ארחיב על כך.

חברות הסליקה

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

חברות אחסון האתרים

אין לי רצון להאשים חברת אחסון מסויימת, אבל אני חזרתי בבלוג העסקי של העסק שלי שוב ושוב על אותה נקודה: אתה רוצה אבטחה ברמה רצינית? אחסון משותף אינו פתרון ואני אומר את זה כאחד שמגדיר את השרתים האלו. מבחינה טכנית, בסופו של דבר מה שמבדל לקוח אחד מלקוח שני זה בסך הכל UID ו-GID באחסון המשותף וזהו. האבטחה באחסון משותף (ולא חשוב מי הספק) אינה יכולה להיות מקסימלית (כמו בשרת VPS או שרת יעודי) בגלל כל מיני גורמים שצריך להתחשב בהם כדי לתת ללקוח אחסון משותף. לצערי חברות רבות המוכרות שרותי אחסון משותף (כולל בוני אתרים רבים שמוכרים את זה כ”ריסלר” בחבילות שלהם) מבטיחות דברים שאי אפשר לקיים ומי שמבטיח “אבטחה מקסימלית” על אחסון משותף – רק מטעה את לקוחותיה.

בוני אתרים

במדינת ישראל ישנם הרבה מאוד שמציעים שרותי בניית אתרים (או “בניית אתרים” כשמדובר על התקנת ג’ומלה/וורדפרס/דרופל, עיצוב, 4-5 שינויים ב-CSS וזהו – הוא “בונה אתרים”), אך לרבים מהם אין מידע כלל או מידע מספק על אבטחת האתר שלהם, כי מי מבוני האתרים מספיק אמיץ לאמר ללקוח “תשמע, אני לא הכי מומחה באבטחת מידע ולכן צריך לשכור מישהו שיעבור על הקוד ובסיס הנתונים ולאבטח את הכל”? אף אחד, אז בעל האתר חושב שהוא מאובטח בשעה שהוא פשוט לא..

אני רוצה לאמר משהו נוסף על חברות האשראי בארץ.

חברות האשראי נסמכות עכשיו על ה-דבר: תקן PCI לאבטחת מידע של כרטיסי אשראי. יש לי חדשות בשבילכם: זה לא יעזור. תמיד יהיה המתכנת הפוץ שלא מבין בסולאריס או לינוקס והשאיר את הסקריפט שמחייב את הלקוחות בחיוב החודשי עם הרשאות 666 ושהסיסמא ל-DB בתוך הסקריפט (תאמינו לי, ראיתי את זה ולא פעם אחת!) אז פורץ שימצא את הסקריפט הזה ולא חשוב כמה הצפנות קשיחות יהיו לבסיס הנתונים – יוכל בקלות לשאוב את הנתונים, לארוז אותם בקובץ zip ולהעביר אותם לעצמו. לא מאמינים? תנחשו איך גנבו לחברת Stratfor את המידע (וכן, הם עברו תקן PCI) עם מספרי כרטיסי אשראי בערב חג המולד…

לצערי הרב, חברות האשראי בארץ עדיין עובדות כאילו הן נמצאות בשנות ה-90, וכשמסתכלים על Paypal בחו”ל לשם השוואה, זה נראה כאילו מדובר במסע בזמן. ישראכרט לדוגמא, ישמחו לתת ללקוחותיהם Isracard Web, כרטיס וירטואלי עם 16 ספרות, אבל הם לא מצמידים את מספר הכרטיס לחשבון, אלא דורשים שהלקוח יפקיד סכום מסויים והסכום הזה “נתקע” באותו כרטיס וירטואלי. אם שמת 600 שקל והשתמשת ב-300, אז 300 תקועים בכרטיס מבלי שתוכל לעשות שימוש אחר זולת שימוש באותו כרטיס וירטואלי. מה אם בקניה הבאה תצטרך 380 במקום 300? תעבור את התהליך מחדש. פתרון מטומטם או לא?

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

ובכלל, היכן אותם מערכות “ניהול סיכון” של חברות האשראי? איך לא נדלקו הנורות האדומות שכרטיסים ישראליים מבקשים אישורים לעסקאות שמזין מספר הכרטיס מגיע מ-IP בסעודיה או במדינות אחרות בשעה שרוב מוחלט של העסקות האלו נעשה מ-IP ישראלי?

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

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

  • חשבון Paypal (מישהו יודע אם כא”ל גמרו את משחקי העמלות כפולות מול Paypal?) – פעם אחת מזינים את מספר הכרטיס, עוברים תהליך אישור כרטיס ובפעם הבאה שאתם רוכשים, תבחרו באופציה של Paypal. את העמלה אתם לא משלמים, אלא הסוחר משלם. מספר הכרטיס שלכם לא עובר לשום סוחר, וניתן גם להתחרט ולהתלונן אם יש לכם בעיה עם עיסקה. אני חייב לציין לטובה את השרות בעברית שלהם בטלפון.
  • אם אתם צריכים לעשות עיסקאות עם אתרים קטנים או כאלו שנמצאים במזרח ואינכם יודעים את טיבם, עדיף להשתמש בכרטיס נטען (שניתן לרכוש בדואר ולהטעין אותו עד 1000 שקל, אולי ויזה כא”ל יתעוררו יום אחד ויאפשרו הטענות חוזרות). במקרים כאלו גם אם משתמשים במספר הזה, הנזק אינו רב.
  • מערכות אתרי האשראי התקדמו טיפה לכיוון שנת 2012 ומאפשרות לראות עיסקאות שנעשו ביומיים שלושה האחרונים (מדוע טיפה? בארה”ב אתה רואה את העיסקה עם הפרטים בחשבון האשראי שלך מיידית, אצלנו בארץ כנראה חברות האשראי עובדות עם קומודור 64 כנראה), ולכן מומלץ אחת לשבוע להסתכל ברשימת העסקאות ולאתר עסקאות חשודות.
  • בעלי אתרים – כן, ברוב המקרים בונה האתר שלכם מבין באבטחת מידע כמו שאני מבין בהטסת חלליות. תתחילו לחפש אנשים שמבינים היטב באבטחת קוד (SRO? אתה כאן? תשאיר פרטים שלך בטוקבק ולינק לאתר שלך) שיעברו על האתר שלכם ויחסמו דברים פתוחים, יקשיחו סיסמאות וגישות ועוד. אחרי הכל, אתם לא רוצים לראות את הפרטים הסודיים שלכם בידי המתחרים שלכם.

ולבסוף – אולי, אולי יבינו בכנסת ששום מאגר מידע אינו חסין בפני פריצה ובמיוחד לא המאגר הביומטרי שמתחיל לקום! (אדרבא, במקרה של הממשלה עם ערימות קבלני המשנה שקל לשחד אותם בבמבה ובפחית קולה) והרעיון כולו דבילי, אולי אם היו מקשיבים לעדי שמיר (ה-S ב-RSA, גוף מאוד מוכר באבטחת מדי – זה Shamir), אז יכול להיות שיש סיכוי שאפשר לעצור את השגעון הזה בראשות מאיר שטרית. למה ללכת רחוק? רק לפני חודשיים ישיבה החליטה לבדוק אם התלמידים שלה עשו עוון רציני ולמדו (השם ישמור) שיעורי נהיגה. מהיכן המידע נראה לכם?

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

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

רוב העסקים והחברות עובדים בדיוק באותה שיטה על מנת להגן על עצמם: חומת אש כלשהי בחברה, גישה מבחוץ (אם תינתן) רק דרך 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 שיבדקו אותו, וליתר בטחון תרימו טלפון לאותו עמית ושאלו אותו אם הוא שלח את אותו מייל. אם הוא לא שלח, מישהו מנסה לחדור אליכם.
  • כדאי להסביר לנציגים להיות חשדנים: לא לתת את המחשב למישהו שעכשיו פגשתם.
  • בנקים: בנק גדול מאוד חשוף לטריקים האלו, ואחד מהניתובים בתוך רשימת הניתוב ניתן לצאת דרכה לרשת גם מהמחשבים של הפקידים בבנק. תארו לכם אפליקציה כמו שתיארתי, רק במקום מייל, היא תעשה דברים אחרים, והיא יכולה להוציא ולהכניס מידע. חושבים שאני מדמיין? אני לא. אני רומז לבנק מסויים שדיברתי עליו בעבר שכדאי שיעברו מחדש על טבלת הניתוב שלהם.

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