כיצד הצלחנו לחדור One Time Password (OTP)?

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

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

 

ההתחלה: גילוי פרצות במנגנון ההזדהות

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

הזדהות עם קוד חד פעמי (OTP) – יתרונות וחסרונות

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

ציפיות מול מציאות

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

מקרה לקוח – אימות OTP לקוי בתהליך "שכחתי סיסמה" אפשר השתלטות על חשבונות באתר

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

כחלק מן המבדק מומחה IPV Security בדק את מנגנון הזדהות זה וניסה לעקוף אותו. הוא השתמש בדוא"ל של משתמש שהכיר שקיים במערכת וניסה לאפס לו את הסיסמה באמצעות מנגנון זה. כאשר נשלחה בקשת שליחת קוד ה-OTP למייל המשתמש, התקבל מצד השרת תגובה המכילה טוקן בשם "OTPToken". לאחר מכן הועבר למסך בו עליו להזין את הקוד שהתקבל, בו הוא הזין קוד שרירותי, תפס את תגובת השרת שמציינת כי ישנה שגיאה בנתונים שהתקבלו, ושינה אותה לתגובה המתקבלת בעת הצלחה – ללא Errors למיניהם ושינוי הפרמטר “IsOK” ל-true.

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

דרכי התמודדות מומחי סייבר בכירים של IPV Security:

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

  1. הגבלת ניסיונות התחברות: להגדיר מגבלה על מספר ניסיונות ההתחברות עם קוד OTP על מנת למנוע מתקפות ברוט-פורס.
  2. יישום מנגנון Rate Limit: לחסום כתובות IP המבצעות מספר בקשות בפרק זמן קצר, ניתן ליישום גם באמצעות ה-WAF / Cloudflare.
  3. וידוא פרמטר ייחודי המתקבל רק לאחר הזנת קוד ה-OTP: להחזיר למשתמש את הפרמטר הייחודי רק לאחר שהשלים את תהליך ההזדהות כראוי.
  4. מחיקת מידע רגיש או עודף מתשובות השרת: למחוק מידע עודף כמו פרטים על המשתמש או פרטי הזדהות כלשהם לפני סיום תהליך ההזדהות.
  5. מעקב אחר פעילות חשודה: להשתמש בכלי ניטור ובקרה לזיהוי פעילויות חשודות וחריגות בניסיונות ההתחברות עם קוד OTP, בייחוד עבור משתמשים בעלי הרשאות גבוהות.
  6. בדיקות אבטחה תקופתיות: לבצע בדיקות חדירה ואבטחה תקופתיות לזיהוי ותיקון פרצות אבטחה באתרי הארגון ובייחוד במנגנוני ההזדהות מולם.

לסיכום,

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

 

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

לחצו כאן

 

להתייעצות מקצועית ניתן לפנות אלינו לאימייל info@ipvsecurity.com או במספר הטלפון 077-4447130. IPV Security מתמחה זה 20 שנה באבטחת מידע, סייבר, סקרי סיכונים ותקנים ורגולציות הנוגעים לביטחון מידע ועוד.