לדלג לתוכן

מבוא לכלי John the Ripper - כך פותחים האשים של סיסמאות

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

אז מה בעצם קורה כשמפצחים האש

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

שיטות הפיצוח המרכזיות

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

למה זה כלי חשוב בבדיקת חדירות

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

מה זה מלמד על מדיניות סיסמאות

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

הרשאה היא לא אופציונלית

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

איך לומדים את זה נכון

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

לסיכום

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

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