מחבר: נעם רותם

משטרת ישראל מרגלת אחרי הגלישה שלנו באינטרנט. מזל שהיא כל כך גרועה בזה

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

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

מחזיק מפתחות של ג'ינגג'ינג וצ'הצ'ה, קמעות חטיבת מעקב האינטרנט של רשות הבטחון הציבורית בשנז'ן, סין, למכירה באתר dgwlang888.b2b.hc360.com

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

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

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

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

שוטר, שוטר, על מי אתה ראוטר?

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

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

שושקה ויואב גלזנר בהפגנה נגד בנימין נתניהו 🖼️ גלזנר
לאן גולשים שושקה ויואב גלזנר מההפגנה נגד בנימין נתניהו? 🖼️ גלזנר

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

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

סטטוסים משנות התשעים

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

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

גרפיטי של 8.8.8.8, ה-DNS החלופי שגוגל מספקים 🖼️ kaan sezyum
גרפיטי בטורקיה של 8.8.8.8, ה-DNS החלופי שגוגל מספקים 🖼️ kaan sezyum

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

טכנולוגיה נוספת היא HTTP/2, שבניגוד לקודמתה מאפשרת להצפין לא רק את התוכן של התקשורת (כמו היום עם שימוש ב-HTTPS), אלא גם את ה-headers הכוללים את שם שרת היעד. נכון לדצמבר 2020, האימוץ של הטכנולוגיה הזו עומד על כמעט חצי (49.7%) מכלל האתרים ברשת, והנתון הזה רק עולה מדי חודש.

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

<חסות>

VPN זה חשוב, ו-ProtonVPN הוא שירות ה-VPN האהוב עלינו.

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

<\חסות>

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

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

תגובת המשטרה לחשיפת "הארץ" וסייברסייבר

טרור? אנטישמיות? שירביט היא כולה עוד פריצה ברשת הישראלית המחוררת

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

זה לא טרור

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

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

סאטושי הם לא יראו ממני 🖼️ פרסומת של שירביט

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

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

משא ומתן בקולחוז

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

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

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

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

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

אז מה צריך לעשות

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

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

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

באג באתר הסלולרי של שירביט 🖼️ פרסומת של שירביט
באג באתר הסלולרי של שירביט 🖼️ פרסומת של שירביט

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

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

דבר אחרון

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

 אחותי, בטלי גם את כרטיס האשראי שלך 🖼️ פרסומת של שירביט
בטלי גם את כרטיס האשראי שלך 🖼️ פרסומת של שירביט

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

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

הודעת ההשבתה באתר שירביט

המגן מכה שנית, לצערנו

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

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

אבל ראשית ראשית ואחרית אחרית.

יישומון המגן של משרד הבריאות 🖼️ אתר משרד הבריאות

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

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

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

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

מאז שחררנו, עידוק ואני, את הפרק הקודם על "המגן" (סייברקורונה 🤿 אל תבנו על יישומוני מעקב המגע 🐱‍💻 ע02פ26) פנו אלינו לא מעט אנשים שהאשימו אותנו בשלל האשמות לא נעימות. החל מ"אתם דובי לא-לא", עבור ב"איך אתם יכולים להגיד שקוד פתוח הוא לא קוד פתוח, אתם לא מבינים מהחיים שלכם", וכלה ב – ובחיי שאני לא ממציא את זה – "אתם כמו ריקלין בערוץ 20". לא נפגענו.

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

אמרו לנו שמי שלא מאמין לממשלה שילך ויבדוק בעצמו, אז זה בדיוק מה שעשינו (ובמאמר מוסגר נאמר שמי שמאמין לממשלה – מגיע לו כל מה שהוא מקבל).

המגן המקורי האורגינל. היזהרו מחיקויים!

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

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

מהמידע שנכלל שם נראה כי הרשומות נאספו לפני כחודשיים, ב-14 במאי 2020. מידע נוסף שהיה שם משווה בין המזהה הזמני (Ephemeral_id) למזהה המשתמש (user_id):

אבל לא רק המידע עצמו היה שם, אלא גם הקוד שאוסף אותו:

אז ראשית – איסוף מידע בבלוטות' לא אמור להיות בכלל בגרסה של "המגן 1", שאמורה לאסוף רק מיקום באמצעות GPS ואת כל רשתות ה-WiFi בסביבת המכשיר. ושנית – הקוד האוסף מידע באמצעות בלוטות' *לא* קיים בקוד הפתוח של משרד הבריאות שאמור לשקף את הקוד הנמצא באפליקציה.

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

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

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

אפילו אם נתעלם מתהליכי הפריסה (Deployment) הלקויים שדוחפים קבצים המכילים מידע שנאסף על ידי משתמשים לסביבת הפרודקשן, או שמעלים קובץ ובו מידע גיאוגרפי מ-Uberlândia, עיר קטנה בברזיל, העובדה שקוד סופר-רגיש, שלא אמור להיות בגרסה הנוכחית, ושלא נמצא במאגר הקוד הפתוח, עולה לחנות האפליקציות ומשם למכשירי מעל מליון אזרחים – מעלה שאלות קשות לגבי מקצועיות חלק מהמעורבים בפרויקט, וברצינות בה הם לוקחים את חשיבותו.

אוברלנדיה, ברזיל 🖼️ Daniela Goulart cc-by-nc-nd

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

"כל הקוד מפורסם בגיטהאב, למעט"

פנינו לדוברות משרד הבריאות, וזו התגובה הראשונית והגנרית למדי שקיבלנו:

1.       אפליקציית המגן פותחה ע"י משרד הבריאות בשיתוף עם מתנדבים ועם החברות הישראליות הבאות: מטריקס ו- igates, ובליווי צמוד של מומחי פרטיות וסייבר.

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

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

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

3.       כל הקוד מפורסם ב- GitHub. זאת, למעט – צד השרת שכולל את קובץ המידע על מסלולים שהאפליקציה מושכת וכן קובצי קונפיגורציה ותרגומים. כמו כן, מטפל השרת בנושא שיתוף המסלול (המתואר בסעיף 2)

4.      נודה אם הפונה יוכל לכוון אותנו לחלק בקוד אליו התכוונת על מנת שנוכל לבדוק את הנושא.

תגובת דוברות משרד הבריאות לדיווח של סייברסייבר על הבעיות בקוד יישומון המגן

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

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

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

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

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

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

תגובת פרופרו

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

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

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

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

המומחים מדברים

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

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