חולשות אבטחה מובנות במקצרי לינקים חושפות מידע אישי, רפואי ופיננסי. אבל למרבה המזל יש מה לעשות -ליחצו על הלינק המקוצר ותגלו איך 🐱💻 הפוסט מלווה את הפרק "קצרלינק וקטלני" – סייברסייבר ע03פ16:
מאת רן לוקאר, נעם רותם, עידו קינן
קצרלינקים, או שירותי קיצור כתובות (URL shorteners), מיועדים להעביר כתובות אינטרנט ארוכות במדיומים שלא סובלים URL ארוך – הודעת סמס, ציוץ בטוויטר או כתבה בעיתון. אבל הם גם סובלים מחולשות אבטחה מובנות, שהופכות אותם למטרה קלה להאקרים חובבי פחמימות. בבדיקת מעבדות סייברסייבר לאבז הצלחנו להגיע לחשבוניות, פרטי התקשרות ופרטים אישיים כמו מספרי תעודות זהות ודרכונים, בדיקות בריאותיות רגישות כולל מידע על אלרגיות מסכנות חיים, קודי QR של כרטיסים להופעות שאפשר היה לגנוב ולהשתמש בהם ועוד.
קצרלינקים יושבים על דומיין ומכילים מספר תווים, בדרך כלל רנדומליים. למשל: הלינק המלא לארכיון הפודקאסט סייברסייבר הוא cybercyber.co.il/?cat=2, שהם 23 תווים. קיצרנו אותו בשירות ביטלי ל-bit.ly/3wHKKeH, שהם 14 תווים בלבד. הקצרלינק מאפשר לנו לקבל סטטיסטיקות על שיעורי ההקלקה, ואם נייצר קצרלינק ספציפי לכל גולש, גם חיווי על כל אחד מהגולשים שנכנס ללינק.
החולשה הבסיסית בקצרלינקים היא קוצרם – לעתים שישה תווים בלבד, שמורכבים מאותיות גדולות וקטנות ומספרות. מספר הקצרלינקים האפשריים במקרה הזה הוא 62⁶, או כ-56.8 מיליארד. אם נרצה למצוא את כל הקצרלינקים של ביטלי בני 6 תווים, נריץ תוכנה שתריץ את כל 56.8 מיליארד הקצרלינקים האפשריים בזה אחר זה – bit.ly/000000, bit.ly/000001, bit.ly/000002 וכן הלאה, ותתעד אילו מהם עובדים. פעולה כזאת נקראת מתקפת כוח-גס (ברוט פורס) – אין בה תחכום, רק זמן וכוח מחשוב.
חולשה נוספת מוכנסת למערכת כאשר מספר הקצרלינקים הזמינים עומד להיגמר, וצריך להגדיל את הטווח על ידי הוספת תווים. יש שירותי קצרלינקים שמוסיפים לששת התווים הקיימים קידומת קבועה של שני תווים. לכאורה, מדובר בהגדלה עצומה של הטווח, מ-56.8 מיליארד ל-218,340 מיליארד – פי 3844. אבל למעשה, מאחר שקידומת שני התווים קבועה, נשארנו עם ששה תווים בלבד שאפשר לתקוף בברוטפורס.
חולשת אבטחה נוספת נובעת מקצרלינקים ממותגים. נניח שכנופיית האקרים חובבי פחמימות רוצה לרוקן את כספותיהם של לקוחות בנק הבורקס, ונניח שאותו בנק נוהג בחוסר אחריות ושולח ללקוחות את הסיסמה לכספת בלינק מקוצר. אם הבנק משתמש בביטלי, ההאקרים היו צריכים להריץ מתקפה על 5.8 מיליארד הקצרלינקים האפשריים, לקבל את הקצרלינקים של כל משתמשי ביטלי, ואז לנסות למיין אותם ולזהות אילו מהם שייכים ללקוחות הבנק. מלא עבודה בשביל כמה מאפים.
אבל אם בנק הבורקס משתמש בשירות קצרלינקים ממותג על הדומיין שלו, BankBurekas.maafim, ההאקרים יריצו מתקפה על 5.8 מיליארד הקצרלינקים האפשריים על דומיין הבנק, ויידעו שכל התוצאות בוודאות שייכות ללקוחות הבנק. וזה כבר שוד בורקסים שאנחנו מוכנים לשקול. כלומר, הם מוכנים לשקול. ההאקרים. לא אנחנו, מה פתאום.
אבל אל דאגה, בנק הבורקס! יש פתרונות די פשוטים לחולשות האבטחה הללו:
הגבלת שימוש: הנפקת קצרלינקים מוגבלים בזמן, שמפסיקים לפעול אחרי כמה שעות, או קצרלינקים חד-פעמיים, שמפסיקים לעבוד אחרי כניסה אחת אליהם.
הגבלת גישה: אם אנחנו שולחים למשתמשת קצרלינק לתיק הרפואי שלה או פירוט כרטיס האשראי, רצוי שנוודא שהיא אכן זו שהקליקה על הלינק, ולא האקר רעב לפחמימות חמות. אפשר לעשות זאת על ידי דרישת שם משתמש וסיסמה, 2FA ועוד.
הגבלת ברוטפורס: אף משתמש סביר לא ינסה להיכנס למיליארדי כתובות מקוצרות. ומשתמש לא סביר כזה הוא ככל הנראה האקר שרוצה לשתות את מאגר הקצרלינקים המלא. אפשר לחסום מתקפות ברוטפורס כאלו על ידי הגבלת תדירות בקשות, הגבלת מספר בקשות לכל כתובת IP, קפצ'ה, 2FA ועוד. תדירות בקשות וכדומה.
הרחבת טווח: כשרוצים להרחיב את טווח הקצרלינקים המידלדל, במקום לפתוח קידומת של שני תווים קבועים, יש לספק שני תווים אקראיים.
הגנת בורקס: עדיף לא להשתמש בקצרלינק ממותג של עסק ספציפי. מצטערים, בנק הבורקס!
🗞️ הכתבה התפרסמה במקור בגיקטיים ב-16.7.2021 🖼️ תמונת שער: סמן יד מקליק על קקטוסים 🖼️ עידוק + הספר "Illustrated catalogue of plants, seeds, bulbs and trees" (1896) (PD)