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

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