הכשלים שהיו באפליקצית אלקטור

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

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

באבטחת מידע פחות.

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

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

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

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

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

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

שלב שני: עשיתי view source. זה מה שראיתי בתוך קובץ הבאנדל היחיד שיש שם:

שלב שלישי: באמצעות כלי ההאקינג cmd c + cmd v עשיתי העתק והדבק של הכתובת אל ה"דפדפן". התגלתה בפני רשימת מנהלי החשבונות השונים. רובם של חשבונות לא מעניינים. ניגשתי אל זה של הליכוד

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

שלב חמישי: HACK THE PLANET

הייתי בתוך המערכת עם גישה מלאה להכל.

אז אילו כשלים תכנותיים היו פה?

כשל ראשון – API שעובד ללא אותנטיקציה מינימלית

כל API שהוא צריך לבצע אותנטיקציה עם token שנמצא בתוך http only cookie בלבד.

כשל שני – אין אימות דו שלבי

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

כשל שלישי – אין מערכת לוגינג

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

כשל רביעי – אין הגנה מפעילויות חשודות

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

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

פוסטים נוספים שכדאי לקרוא

תמונה של עציץ, רספברי פיי ורמקול
רספברי פיי

לגרום לעציץ שלכם לדבר

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

מיקרו בקרים

חיבור מצלמה למיקרובקר

חיבור מצלמה למיקרו בקר ויצירה של מצלמת אבטחה מרחוק בעלות של 20 שקל.

תמונה מצוירת של רובוט שמנקה HTML
יסודות בתכנות

סניטציה – למה זה חשוב

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

צילום מסך של סוואגר
יסודות בתכנות

openAPI

שימוש בתשתית הפופולרית למיפוי ותיעוד של API וגם הסבר בסיסי על מה זה API

גלילה לראש העמוד