הסייברפרטיזנים נגד נשיא בלארוס

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

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

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

שוטרים מפנים מפגין 🖼️  Clker-Free-Vector-Images
שוטרים מפנים מפגין 🖼️ Clker-Free-Vector-Images

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

המוחים לא התייאשו ופנו אופליינה: "היית רואה אנשים במעלית פשוט משאירים החסני USB עם קבצי גישה ל-VPN", אמר לגיזמודו מקסימס מילטה מאוניברסיטת Belarusian European Humanities. אבל גם זה לא תמיד עזר, לפי לוקשינה: “רבים מאלו שיש להם גישה לכלי עקיפת צנזורה, כמו VPNים, מגלים שהטכנולוגיות הללו נחסמות גם כן“.

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

לוגו ה"קיבר-פרטיזני" (סייבר-פרטיזנים), האקרים מתנגדי שלטון לוקשנקו בבלארוס
לוגו ה"קיבר-פרטיזני" (סייבר-פרטיזנים), האקרים מתנגדי שלטון לוקשנקו בבלארוס

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

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

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


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

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

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

שמונה חודשים לאחר השקת הבאונטי קיבל סמנכ”ל האבטחה של אובר דאז, ג’ו סאליבן, אימייל מהאקר שהזדהה בשם ג’ון דאוז בכתובת johndoughs@protonmail.com בשירות האימייל המוצפן והמאובטח פרוטון מייל. מצאתי פירצת אבטחה חמורה אצלכם, סיפר "דאוז", וגם עשיתי דאמפ של הדאטהבייס שלכם ומידע נוסף. בדיקה של צוות אבטחה של אובר העלתה כי ההאקרים השתמשו בפרטי גישה גנובים לגשת לקוד המקור של אובר בגיטהאב, שם מצאו פרטי גישה של דלי AWS והשתמשו בהם להוריד את המידע על לקוחות ונהגי אובר.

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

צריך להיות בטוחים מה יש לו [להאקר; ע”ק], רגישות/חשיפה של זה ו-ודאות שהוא באמת יכול להתייחס לזה כמצב 🐜 באונטי […] המשאבים יכולים להיות גמישים לצורך סיום הסיפור אבל אנחנו צריכים לתעד זאת בקפדנות.

סמס ממנכ"ל אובר טראוויס קלניק אל סמנכ"ל האבטחה ג'ו סאליבן, 15.11.2016

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

קלניק וסאליבן הסתירו את העיסקה מהנהלת החברה, מה-FTC ומ-57 מיליון המשתמשים ו-500 אלף הנהגים שמידע עליהם נחשף להאקרים – עבירה על החוק בכל מדינות ארה"ב, שמחייב לדווח לאנשים על דליפת מידע מזהה אישי (PII) אודותיהם.

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

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

ג'ו סאליבן באתר אובר

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

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


התפרסם במקור בגירסה שונה בפינה "האחראי על האינטרנט" בגלצ:
🚗 הפריצה מ-2016 ממשיכה לרדוף את אובר 🛩️ הטיסמולטור של מיקרוסופט בונה מחדש את תל אביב 📻 האחראי על האינטרנט בגלצ 22.8.2020


אפשר את פרטי חשבון הבנק שלך? לא משנה, ניקח כבר מביטוח לאומי

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

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

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

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

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

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

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

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

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

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

תגובת המוסד לביטוח לאומי:

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

(צילום ראשי 🖼️ קובי גדעון, לע"ם)


ככה מתגלצ'ים בביטחה ובפרטיות

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

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


דרושות האקריות לסורק הסייברסייבר

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

אנחנו פונים ללב שלכם ומציעים הצעה חד-פעמית: רוצות לעבוד איתנו על ניתוח הממצאים מהסורק? אנחנו צריכים אתכן.ם!

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

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


סייברקורונה: האם להתקין את המגן 2.0?

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

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

יישומון המגן 2 בחנות האפליקציות של גוגל

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

אז מה? להתקין או לא להתקין את המגן? המגן 2.0 עובדת בצורה שונה מהאפליקציות המקובלות בעולם. מהניסיון הפיתוחי שלי? אם עובדים בצורה שונה מה-API הרשמיים זה נגמר לא טוב. אני מקווה שזה לא יהיה גם הפעם. המגן זו החלופה האזרחית היחידה לאיכוני השב״כ הלא יעילים. זו הסיבה שאני מתקין אותה.

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

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


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

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

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

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

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

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

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

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

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

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

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

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

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