Home אבטחת מידעPenetration Testing - Offense התקפת ופריצת WPA\WPA2 בWi-Fi הסבר על PSK ו Four Way Handsake

התקפת ופריצת WPA\WPA2 בWi-Fi הסבר על PSK ו Four Way Handsake

0 comment
נהנתם מהמאמר ? שתפו אותו!

מומלץ לקרוא תחילה את המאמרים:

הסבר על Wi-Fi – הצפנות, SSID וערוצים
איזה מתאמי Wi-Fi לבחור לשימוש עם Kali והגדרת ALFA AWUS036ACH ב Kali ושינוי MAC

התקנת Kali 2017.3
הגדרה ראשונית של Kali והוספת Repository


כל הזכויות שמורות לטל בן שושן – Shushan.co.il

WPA\WPA2 הם פרוטוקולי אבטחה של 802.11 והם משתמשים בהצפנה מסוג CCMP וAES הם למעשה היורשים של WEP.
PSK הוא קיצור של Pre-Shared Key מצב בו יש מפתח אחד בו המשתמש מקיש את המפתח ואם המפתח תואם למפתח הקיים בWi-Fi הוא יקבל גישה.
כאשר טלפון סלולרי רוצה גישה לראוטר הוא יתחיל בתהליך הנקרא Association בו הוא מקבל את הקוד (הPSK) ובודק אם הקוד זהה לקוד הקיים אצלו, אם כן ההתחברות תצליח.
פעולה זו נקראת לחיצת היד המרובעת Four-Way Handshake, במצב זה לשני הצדדים יש מפתח זהה (קוד זהה) הAP (הראוטר) שולח לטלפון הסלולרי מספר אקראי כלשהו, אשר נקרא A-Nonce הודעה שאינה מוצפנת ואז הטלפון הסלולרי יוצר מפתח חדש על ידי ה PMK קיצור של Pairwise-Master-Key שמייצר PTK קיצור של Pairwise-Transient-Key

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

  • הראוטר שולח לטלפון הסלולרי ANonce שהוא מפתח זמני והוא מתרחש בהתחברות הראשונה של הטלפון הסלולרי אל ה AP (הראוטר)
  • כעת הטלפון הסלולרי בונה SNonce ושולח אותו עם ה PTK (גם Message Intergrity Code) נשלח גם אל ה AP
  • כעת ה AP יוצר GTK קיצור של Group-Temporal-Key רצף של מספרים שבה לזהות התקפה של Replay ובסופו הטלפון הסלולרי (הלקוח)
  • שולח ACK על מנת לאשר סופית שזה הקוד הPSK שאיתו הוא יתחבר אל ה AP

מדוע זה נקרא Four Way Handshake, בגלל ארבעת הנקודות שהצגתי למעלה, כך למעשה מוודא הראוטר (AP) שאכן הלקוח (הטלפון הסלולרי) יודע את הקוד ומאשר אותו

על מנת לתקוף רשת המוגנת באמצעות WPA\WPA2 PSK נצטרך שהרכיבים יבצעו את ה Four Way Handshake, ללא ביצוע של התהליך לא נוכל לקבל את ה IV’s שאנו רוצים ולא נצליח לבצע התקפת Brute Force על הAP

על מנת להשתמש במדריך זה, נצטרך להשתמש ברכיב Wi-Fi שמסוגל לבצע Packet-Injection ולהיכנס למצב Monitor Mode (מצב בו נאסוף את ה Packets שאנו צריכים על מנת “לפרוץ”.
אז נצטרך את הדברים הבאים:

  • Wi-Fi Adapter – ALFA AWUS036ACH (ניתן להשתמש ברכיב אחר אשר תומך ב Kali)
  • Kali Linux

לצורך מעבדה זו הקמתי SSID בשם Bed_Shushan, ראוטר הנמצא בחדר השינה ועליו אציג את המאמר.

הכלי בו נשתמש נקרא airodump-ng, נתחיל בסריקת הרשתות הנמצאות באזור

נבדוק מה שם ה כרטיס Wifi שלנו

sudo iwconfig

נקיש

sudo airmon-ng check kill

תחילה נגדיר את הראוטר במצב Monitor Mode

sudo sudo iwconfig wlan0 mode monitor

ואז הגדירו אותו

sudo airmon-ng start wlan0

נקיש את הפקודה שסורקת את הרשתות

sudo airodump-ng wlan0

כעת נשתמש באותו הכלי על מנת לאסוף את ה IV’s שהם הData שאנו צריכים, נקיש את כתובת הMAC של הראוטר וניתן שם לקובץ ה cap שיווצר מאוחר יותר (קובץ זה מכיל את כל התעבורה של הרשת אותה אנו מקליטים)

כעת הסריקה תתחיל, חשוב! אין לסגור חלון זה בשום שלב, רק לאחר שהשגנו את הWPA Handshake שהוא ה Four Way Handshake (ארשום לכם מתי אפשר לסגור חלון זה)

על מנת לקבל את הWPA Handshake עלינו לחכות שלקוח (מחשב נייד, טלפון סלולרי) יבצע אימות מחדש מול הAP (הראוטר) , היינו מחכים אבל יש דרך אחרת והיא בשימוש של כלי בשם aireplay-ng על ידי כלי זה אנו נשלח לראוטר 4 Packets שבה אנו מודיעים על התנתקות ממנו, פעולה זו תכריח את המשתמש המחובר לרשת להתנתק מהAP ולאחר מכן להתחבר מחדש (מכיוון שכך המכשיר המחובר לWi-Fi שומר על התחברות)
נקיש את הפקודה, בMAC הראשון (משמאל לימין) נקיש את הAP הלוא הוא הראוטר ובMAC השני את המכשיר שעכשיו מחובר אליו.

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

כעת נוכל להבחין, שהתווסף לנו שורה בחלון של הסריקה של Data (מסומן באדום)

ברגע זה, נוכל להפעיל Brute Force על Key שהשגנו, אך לפני זה נאלץ ליצור קובץ סיסמאות, למה שניצור אותו ולא נוריד מהאינטרנט? סיבה פשוטה, רוב הישראלים משתמשים במספרי טלפון או תעודת זהות על מנת להגדיר את הסיסמא ל Wi-Fi ואנו ננצל בדיוק את זה

הכירו את Crunch

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

נקיש את הפקודה

sudo crunch 10 10 -t 05%%%%%%%% -o wordnum1.txt

הפקודה אומרת שכמות התווים היא 10 וההתחלה של כל סיסמא היא 05 ואחריה ברצף עולה 8 מספרים, שכן מספר טלפון סלולרי ישראלי הוא 10 תווים כך שיתקבל 0500000001 ואז 0500000002 וכן הלאה עד 0599999999 וכך לא נפספס מספר טלפון סלולרי אחד.
כך מסמך הסיסמאות נראה:

כעת נבצע את ה Brute Force על IV שהוצאנו, נקיש את הפקודה
shushan_bed_wpa-01.cap הוא הקובץ שנוצר כאשר הרצנו את airodump-ng וקובץ זה נמצא בתיקיית ה Home שלנו

wordnum1.txt הוא קובץ הסיסמאות שלנו שיצרנו קודם.

כעת התהליך ירוץ

בסיום לאחר זמן של סריקה ואם הסיסמא היא טלפון סלולרי נקבל את הסיסמא!

מאמרים קשורים

Leave a Comment