כמה פיצוח כוח-ברוט עשוי לחשוף את הסיסמה שלך

פטיש מנסה לפתוח מנעול בכוח.

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

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

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

אתרי אינטרנט צריכים להמיר סיסמאות חשיש כדי להגן על המשתמשים

כשאתרים מאחסנים את הסיסמאות שלך, עליהם (אך לא תמיד) למלח ולסחוב את סיסמאות המשתמש, כך שמישהו שברשותו מסד הנתונים של המשתמשים לא יוכל להשתמש בו.

פונקציות Hash, כמו SHA-256, הן פונקציות קריפטוגרפיות בכיוון אחד. כל “פיסת נתונים, טקסט, תמונה או מספר כלשהו ניתנים ל”הידרדרות”, ולא משנה כמה זמן הקלט הוא, התוצאה תהיה תמיד 256 ביטים. כאשר מקודד בהקסדצימלי (כמו למטה), התוצאה מחרוזת בת 64 תווים.

חשיפה מלוחה מוסיפה הגנה נוספתדוגמאות לחיפושי “מלוחים” חוזרים שוב.

איך התוקפים מפצחים את הסיסמה שלך

כדי להקשות על האקרים פוטנציאליים, אתרים ישתנו סיסמאות עם “מלח”, המהווה פיסת נתונים אקראית (ראו כיצד המלחה וחשיפה עובדת).

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

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

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

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

כמה שילובי סיסמאות יש?

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

סיסמה בת שתי תווים כוללת 26 × 26 אפשרויות והיא הייתה לוקח (26 × 26) / 2 ניסיונות לפענח.

הנוסחה c = (m ^ n) / 2 מתאר את הקשר בין האפשרויות לכל דמות (M), אורך הסיסמה (n) ומספר הניחושים הצפוי (ג).

הקשר בין אורך הסיסמה למספר הניחושים לפיצוח אותה

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

  • סיסמאות קטנות (m = 26)
  • אותיות קטנות וקטנות (m = 52)
  • אותיות גדולות וקטנות ותווים מיוחדים (m = 67)

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

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

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

גרף כדי להציג את סולם אורך הסיסמה מול ניסיונות נדרשים לנחש אותה.

  • סיסמאות קטנות (m = 26)
  • אותיות קטנות וקטנות (m = 52)
  • אותיות גדולות וקטנות ותווים מיוחדים (m = 67)

כמה זמן לוקח לפצח סיסמה?

כמה מהר תוקף יכול לפצח את סיסמתך תלוי במהירות המהירה של חומרת המחשב של התוקף.

מחשב רגיל עשוי לבצע בערך 100,000 ניחושים בשנייה. GPU ייעודי יכול להיות מהיר פי מאה מזה, ואפשר ליצור חווה לפיצוח סיסמאות עם מאות GPUs.

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

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

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

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

ככל שיש לתוקף מידע רב יותר, כך יקרה סדק מהיר יותר

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

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

אנשים נוטים גם לבחור סיסמאות שיש רק מספרים בסוף (כמו hello111), וכוללים איפשהו את שם השירות או כתובת האתר. סיסמה המשמשת ל- Gmail שמכילה את המילים google או gmail ויש לה ארבע ספרות בסוף (כמו gmailpanther1234), קל לפיצוח, גם אם היא ארוכה.

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

השתמש בסיסמאות חזקות עם מנהלי סיסמאות

הכלל החשוב ביותר הוא: השתמש תמיד בסיסמה חזקה.

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

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