הבוט לחידוש דרכון חוזר עם טוויסט חדש: "אין להם דרך לחסום אותנו"
אחרי שחברת CallFlow חסמה את הבוטים לחידוש דרכון ישראלי, חוקר אבטחה החליט שלא לוותר, ומצא דרך לעקוף את מנגנון הקאפצ'ה
לא טסלה, לא אייפון 13 ולא פלייסטיישן 5… נדמה שהמוצר הנחשק ביותר לשנת 2022 הוא תור לחידוש דרכון ישראלי. כזכור, אחרי הקריסה והמחסור בתורים בלשכות רישום האוכלוסין, הרימו כמה מתכנתים בוטים שאיפשרו לאלפים לקבוע תורים, רק כדי להיחסם על ידי החברה שאחראית על השירות.
אבל עכשיו אנחנו מדווחים על שיתוף פעולה מעניין ודי מקורי בין חוקר אבטחה ליוצר הבוט המקורי, שיתוף פעולה שאולי יאפשר למשתמשים לתפוס תור ואולי להספיק לטוס בחודשים הקרובים.
תקציר האירועים הקודמים
לפני חודש דיווחנו לכם על ניסו מזוז והבוט שפיתח שהחל כערוץ טלגרם פשוט, שמדווח על תורים שנפתחו או התפנו, והפך למערכת זימון התורים שמשרד הפנים ו-MyVisit היו צריכים כנראה לפתח מלכתחילה. בין השאר כללה המערכת שפותחה בהתנדבות את היכולת לראות את כל התורים הזמינים בכל אחד מ-52 הלשכות הפתוחות ברחבי הארץ, כך שהמשתמשים לא היו צריכים לעבור לשכה לשכה ולרענן את העמוד כל היום בתקווה לתפוס את התור הנכסף.
אבל יחד עם מזוז הגיעו עוד מפתחים שניסו לפתח פתרונות כאלו ואחרים, ובהם גם בוטים שתופסים תורים ולאחר מכן מוכרים אותם. CallFlow, החברה שעומדת מאחורי שירות MyVisit, שעליו מתבססת מערכת התורים של לשכת רישום האוכלוסין, החליטה לסיים את החגיגה, וחסמה את האפשרות ל-Session אנונימי, הוסיפה מנגנון Captcha, ובפועל חסמה את הגישה של כל הבוטים.
סוף החגיגה? לא כל-כך מהר. לא כשמתעסקים עם הייטקיסטים.
צרת רבים – מתכון לתוסף
שרון בריזינוב, חוקר אבטחה ב-Claroty, בנה גם הוא בוט לשימוש אישי כדי לסייע לאחותו לקבוע תור לחידוש דרכון, ולאחר שכל הבוטים נחסמו לפני כשבועיים, הוא החליט שהוא לא מוותר עליהם, והחליט לפנות למזוז כדי לחשוב על שיתוף פעולה, שיוביל להשבת הבוט הפופולרי שלו לחיים. "הבנתי שיש כאן אתגר טכנולוגי מעניין ואני אוהב את זה. חשבתי על פתרון, שאי אפשר לסגור אותו", מספר בריזינוב לגיקטיים. אפשרות אחת שעלתה היא להשתמש בשירותים אנושיים שפותרים קאפצ'ות עבור שירותים שכאלו, אבל זה היה נראה להם כפתרון לא נכון.
במקום זאת, בריזינוב ומזוז חשבו על הדרך לנצח את הקאפצ'ה: כשאתם נכנסים ל-MyVisit ופותרים את הקאפצ'ה, אתם מקבלים טוקן ייחודי שפעיל במשך 10 דקות. זה בעצם תחליף לקובצי קוקיז שמאפשר לכם להמשיך לגלוש באתר ולחפש תורים פנויים. ברגע שעוברות 10 דקות, אתם צריכים שוב לפתור קאפצ'ה וחוזר חלילה. אז השניים יצרו תוסף שבעצם לוקח את הטוקן הזה, ומעביר אותו לבוט, כך שהבוט מקבל 10 דקות חופשיות לרוץ ולחפש עוד תורים קיימים לטובת הכלל. ברגע שהבוט מוצא תור, הוא מדווח לערוץ הטלגרם שכבר נושק ל-18 אלף נרשמים.
כך, מי שהתקין את התוסף ונכנס לאתר משרד הפנים מסייע להפעלת הבוט, שגם יכול לעזור לו בהמשך. לטענת השניים, יותר מ-300 משתמשים הורידו את התוסף, וכששאלתי אותם האם זה מספיק, הם משיבים כי מלבד בשעות הלילה המאוחרות, הבוט עובד בצורה רציפה הודות למשתמשים. "האמת היא שהייתי סקפטי לגבי הרצון לשתף פעולה ולהוריד את התוסף, אבל זה נותן ערך לאנשים ויש להם תמריץ".
בריזינוב הוא כאמור חוקר אבטחה, ולכן רק מתבקש שנבדוק את נושא האבטחה, כיוון שמדובר בהעברה של טוקן והתקנה של תוסף. לטענתו, המשתמשים יכולים להיכנס למערכת בצורה אנונימית (אחרי מילוי Captcha כמובן), מה שאומר שהטוקן שלהם לא מקושר אליהם בשום אופן. באפשרות השנייה, המשתמש מזין את מספר הטלפון שלו ואז עובר את תהליך הקאפצ'ה, כך שבמקרה הזה, הטוקן אכן מקושר למספר הטלפון של המשתמש, אך לטענת בריזינוב התיעוד הזה נשמר רק אצל CallFlow, כמו במצב רגיל, ולא מגיע לתוסף והמערכת של מזוז, כך שבכל מקרה מידע פרטי של המשתמשים לא עובר ביחד עם הטוקן.
בהמשך: הבוט יקבע עבורכם את התור
נכון לעכשיו, הבוט, בשילוב התוסף, רק יודע לזהות תורים פנויים ולשלוח לגביהם הודעה בערוץ העמוס, אבל מזוז מספר לגיקטיים שהוא כבר חושב על השלב הבא: "אני רוצה להתחיל במהלך השבוע בפעילות של קביעת תורים. זה קצת שונה ממה שעשינו עד היום. זה יעשה בצורה קצת שונה והוגנת". לדברי מזוז, הוא יצר סקריפט שהוא מעין מנגנון תיעדוף, כך שאדם שטס בעוד חודש, ואין שום סיכוי שיקבל את הדרכון שלו בזמן לא יתפוס תור של אדם שמנסה לטוס בספטמבר, ויכול להספיק לחדש את הדרכון שלו. "בבוטים אחרים הכניסו את כולם לתור ארוך וקבעו להם תורים ללא שום מנגנון תיעדוף. הכל היה רנדומלי. נקווה שזה יעשה קצת יותר שכל". במערכת החדשה שלו, מזוז טוען כי הוא יבקש מהמשתמשים להזין תעודת זהות וטלפון נייד לצורך ההרשמה, אך לטענתו הם יישמרו בצורה מוצפנת.
ולשאלת מיליון הדולר: האם מדובר בפיתרון זמני ש-CallFlow תוכל לחסום שוב? לשאלה זו משיב בריזינוב כי "אין להם דרך לחסום אותנו. אנחנו משתמשים בכוח הקהילה כדי לעשות את זה". בשביל לחסום את הבוט החדש, CallFlow תצטרך ככל הנראה לשנות את כל מערך האבטחה שעליו היא מתבססת, וכמו שראינו עד כה, CallFlow לא מוסיפה פיצ'רים חדשים במהירות.
פנינו גם לחברת CallFlow לתגובתם, וזו לשונה: "אעדכן אותך שרשות הסייבר הלאומית הנחתה אותנו לא לאפשר בוטים. בנוסף, הסיבות להסרת הבוטים ידועות ומובנות: פעילות ספסרות, מאגר נתונים לא חוקי, תפיסת תורים ועומס מלאכותי. בנוסף, בהתאם להנחיות משרד הפנים, חלו שיפורים בממשק המשתמש ובקרוב יעלו שיפורים נוספים. בכל מקרה, על פי ידיעתנו, רשות האוכלוסין פועלת להגדלת ההיצע כך שהבעיה בכללותה תצטמצם. לידיעתך, מיי ויזיט פועלת במאות ארגונים בישראל ובעולם כפלטפורמה לזימון תורים לשביעות רצון הארגונים והלקוחות".
התוסף של בריזינוב ומזוז זמין ב-GitHub, והמערכת של מזוז זמינה כאן
הגב
41 תגובות על "הבוט לחידוש דרכון חוזר עם טוויסט חדש: "אין להם דרך לחסום אותנו""
* היי, אנחנו אוהבים תגובות!
תיקונים, תגובות קוטלות וכמובן תגובות מפרגנות - בכיף.
חופש הביטוי הוא ערך עליון, אבל לא נוכל להשלים עם תגובות שכוללות הסתה, הוצאת דיבה, תגובות שכוללות מידע המפר את תנאי השימוש של Geektime, תגובות שחורגות מהטעם הטוב ותגובות שהן בניגוד לדין. תגובות כאלו יימחקו מייד.
הפתרון נחמד אבל מצטער לאכזב: אפשר לחסום די בקלות לדעתי. פשוט לשייך את הטוקן לIP של המשתמש שפתר את הקאפצ'ה. ככה שבוט עם IP אחר לא יוכל להשתמש בטוקן שנוצר במחשב של זה שפתר את הקאפצ'ה.
הדרך לעקוף את זה יהיה תוסף שמריץ את הבוט עצמו. כלומר שהבוט ירוץ על המכונה של המשתמשים ואת זה כמעט בלתי אפשרי לחסום כי זה מדמה פעולה אנושית.
היום חסימות לא יכולות להיות מבוססות IP כי מכשירים מודרנים מחליפים IP בתדירות גבוהה – מעבר בין רשתות wifi, רשתות LTE וכו׳
בטח שיכולות, אבל זה ייפגע בחוויית המשתמש ותלוי כמה זאת מעניינת את החברה.
כבר קרה לי שהייתי צריך לעשות לוגין מחדש כי עברתי מוויי-פיי לסלולארי או בחזרה.
ומה לגבי mac address?
תגובה של אדיוט שמנסה להיראות רלוונטי
יכולות להיות גם מבוססות על fingerprint של הדפדפן
פינגרפרינט של הדפדפן? אתרי הממשלה עדיין מנסים להבין מה אפשר לעשות עם הטכנולוגיה החדשנית של קוקיז…
אבל התוקן נשאר רק לעשר דקות, זה אומר שהוא לא קובע. כך שאפשר להשתמש בIP, ופתרון נוסף הוא שימוש בmac address, שלא ניתן לשינוי.
נכון מק אדרס לא ניתן לשינוי. זה לא שהוא כתוב באופן לוגי כלשהו ואז מוחלף בראוטר הביתי שלך ואז מוחלף כל פעם שהוא קופץ מראוטר לרואטר. כי מי בכלל יודע מה זה L2 או L3. אפשר לכתוב שטויות בכיף.
כתובות אייפיי מתחלפות בתדירות גבוהה על כל שינוי רשת. אפשרות אחרת לחסום היא באמצעות שיוך כתובת הmac של המכשיר. למרות שגם כתובות מאק אפשר לשנות לרנדומליות
כתובת הmac לא נשלחת
לכל מי שמדבר על IP שמתחלף בתדירות גבוהה – הTOKEN הוא רק לעשר דקות. קשה לי להאמין שמישהו יחליף IP כמה פעמים בעשר דקות כאשר הוא שקוע באתר של משרד ממשלתי…
session id?
תן לי לנחש יא מטומטם שכמוך, בצבא בטח היית שואל מלא שאלות קיטבג, נכון?
אולי תיתן עצות גם לחמאס איך לעשות פיגועים? אויבים מבית אשכרה….
כל הכבוד.
אפשר להחליף את כל הממשלה בבוט
זה לא כבר ככה היום?
יש בוטים שלא דורשים מהמשתמשים להוריד תוסף ועלולים לפגוע להם בפרטיות
https://t.me/misradpnim
במקום לחסום את הבוט פשוט שבמשרד הפנים יחלו לעבוד
הם עסוקים בלחסום פליטים אוקראנים
לעבוד זה קשה, למה לעבוד ולחפש קבלן שיבנה מערכת טובה ונוחה למשתמש כשאין לך מתחרים?
אוי נו איזה בושה, אם רוצים יש כ"כ הרבה דרכים לחסום את הבוט הזה שזה פשוט בושה לטעון את השטויות האלה, ועוד בכותרת.
מחר הבוט הזה יחסם. ובפעם הבאה תעשו דברים בשקט מבלי להתקשר ל-CallFlow ולהסביר להם כיצד לחסום אתכם.
הוא ממש מסביר איך לחסום אותם. חברת CallFlow פשוט צריכים לסגור את האפשרות להיכנס למע' בצורה אנונימית ולדרוש כניסה רק עם מספר טלפון.
זה יצמצם את מספר האנשים בו זמנית יאפשר להם לחסום מספרים שמתנהגים כמו בוט וכ'…
בשביל מה אתה ממשיך לתרום להם טיפים?
הם לא צריכים את הטיפים שלי. כלומר כל הכותרת של הכתבה הזאת היא שטות גמורה, ובשביל זה יש את התגובות. כי הם לא יתקנו את הכתבה.
פה אתה מניח שהמדינה לשם שינוי לקחה חברה שיש לה מושג מה הם עושים
נדמה לי שכבר לפני שנים פיתחו בינה מלאכותית שפותרת קאפצ'ה
"לשביעות רצון הארגונים והלקוחות".
פחחח.
תעשו מוצר נורמלי במקום להתעסק בלחסום את מי שמנסה לפתור את הבעיות שאתם גורמים.
הסתומים "חסמו" את הבוט אבל נהיה לקשה יותר להיכנס לאדם הלא בוט
יפה, אבל לא אוהב שזה עבר לתוסף (לכו תדעו מה זה עושה מאחרי הקלעים בדפדפן). כשזה היה בוט בטלגרים-בסדר. תוסף? אתר שמבקש ממני מייל שזה שקול בימינו לת.ז/כתובת מגורים? לא.
זה קוד פתוח אפשר לקרוא מה זה עושה (עוד לא קראתי)
גם התנאים של הבנק להלוואה ועדין אף אחד לא יודע מה כתוב שם
לתפוס תורים ולמכור אותם בכסף זה סחיטה וזה לא מוסרי… תופעה שלא צריכה להיות קיימת… השוואה דומה לזה היא ספסרות בכרטיסי מופע שזו עבירה פלילית… (אתה קונה הרבה כרטיסים במחיר רגיל כדי למכור אותם לאנשים נואשים כשהם נגמרים במחיר גבוהה, זה בדיוק אותו דבר כמו לתפוס תורים בחינם עכשיו על ידי בוטים וכשאין יותר תורים למכור אותם לאנשים נואשים בכסף)
עשו את הבוטים כדי להתגבר על ממשק זוועתי שפיתח קבלן שנתן כנראה את המחיר הכי זול. ספסרות זה דבר שקורה מעט מאוד אם בכלל וזה רק תירוץ נוח של החברה שעשתה את הפאדיחה, לעשות קאפצ'ות ולתרץ שזאת הסיבה
אנשים רבים לא היו צריכים לחדש דרכון אם הממשלה לא היתה מענישה אותם על סירוב שמירת טביעת אצבע במאגר הביומטרי בקיצור תוקף הדרכון מ 10 ל 5 שנים.
ככה זה כשהשלטון נלחם באזרחים במקום לשרת אותם.
ועכשיו יש לנו אפליקצית הזמנת תורים שנלחמת באזרחים שמעיזים לרצות דרכון
אמנם מדובר במגזין טכנולוגי אבל נראה לי שבמקרה הזה הפתרון איננו טכנולוגי
משרד הפנים בתגובה חחח האתר שלנו גם ככה לא זז ומגיב.. אז לך תחפש 🙈
יש דרך הרבה יותר פשוטה מהמתוארת פה. כמעט כמו לפני השינוי עם תוקן + Api key.
בלתי אפשרי לחסום? דוקא יש דרך קלה לחסום – שיוך הטוקן לכתובת איי פי. אבל לא נגלה להם :)
דרך אחת לחסום את הבוט היא להשתמש ב-webauthn (כניסה באמצעות נעילת מסך של המכשיר) ושיוך הטוקן ל-publickey שנוצר מהמכשיר (ה-private key נשמר במכשיר בצורה מוצפנת)
דרך נוספת היא להגדיל את זמן התגובה בין בקשה לבקשה (עם penalty שתלוי בזמן שבין בקשה לבקשה) ככה שבוט שמנסה לבצע המון בקשות ייצטרך לחכות המון זמן ולא יוכל לאסוף מידע במהירות (סוג של rate limiter)
אפשר להגדיל את זמן התגובה בין בקשה לבקשה (עם penalty שתלוי בזמן שבין בקשה לבקשה) ככה שבוט שמנסה לבצע המון בקשות ייצטרך לחכות המון זמן ולא יוכל לאסוף מידע במהירות (סוג של rate limiter)