תיעוד תנועה ב-WLAN

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

השלבים העיקריים הם:

  1. מוצאים את הערוץ הנכון להאזנה.
  2. מתעדים את התנועה.
  3. לשתף את הצילום ואת ה-hash של סיסמת ה-WLAN.

1. בחירת הערוץ והרוחב המתאימים

רשתות WLAN פועלות בתדרים:

  • ערוץ, שבדרך כלל מצוין באמצעות מספר. ‫1-13 מיועדים לערוצי 2.4GHz, 36-200 מיועדים לערוצי 5GHz
  • עם רוחב ספציפי (20Mhz, ‏ 40Mhz, ‏ 80Mhz, ‏ 160MHz)

לכל נקודת גישה (לדוגמה, נתב, צומת רשת) ברשת יש בדרך כלל ערוץ ייחודי של 2.4GHz וערוץ של 5GHz, וצריך למצוא לאיזה מהם המכשיר מחובר. קיימות מספר אפשרויות:

שימוש בלוח הבקרה של הנתב

אם אתם משתמשים ב-Nest WiFi, דלגו על האפשרות הזו – המידע לא נחשף.

ברוב הנתבים יש רשימה של המכשירים המחוברים, ושל הערוץ ורוחב הפס שבהם הם משתמשים.

  1. במדריך הזה מוסבר איך למצוא את כתובת ה-IP של הנתב.
  2. עוברים לכתובת של הנתב בדפדפן האינטרנט, לדוגמה http://192.168.1.1.
  3. מתחברים לחשבון. שכחת את הסיסמה? חפשו תג על הנתב או השתמשו בסיסמאות לנתב.
  4. מחפשים דף עם שם כמו "לקוחות" או "מכשירים מחוברים". לדוגמה, דף של נתב Netgear עשוי להיראות כמו בדוגמה הבאה, או כמו מכשירי Eero.

    תצוגת הלקוח של Netgear

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

    תצוגת ערוצים של Netgear

להשתמש ב-Mac, אם הוא כבר מחובר לאותו ערוץ

לוחצים על Option במקלדת ואז על סמל ה-WLAN בפינה השמאלית העליונה של שורת הסטטוס ב-Mac. אמור להופיע תפריט ה-WLAN הרגיל עם עוד כמה אפשרויות ופרטים. עוברים על האפשרויות הלא זמינות בתפריט ומחפשים את האפשרות שמוזכר בה "ערוץ":

`Channel 60 (DFS, 5GHz, 40MHz)`

WLAN ב-Mac

לא ניתן למצוא את הערוץ והרוחב

אם השיטות האחרות לא עובדות, אתם יכולים לנסות:

  1. מפרטים את כל הערוצים שבהם נקודות הגישה משתמשות (בדרך כלל 2 לכל נקודת גישה או נקודת רשת).

    א. מומלץ בטלפון Android, אפשר להשתמש באפליקציה כמו Wifiman או Aruba Utilities.

    א. ב-Mac, אפשר להשתמש ב-/System/Library/PrivateFrameworks/Apple80211.framework/Resources/airport-s כדי להציג את רשימת האפשרויות.

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

  3. מתקינים את Wireshark (אפשר להיעזר במאמר התקנת Wireshark).

  4. פותחים כל אחד מהתיעודים באמצעות Wireshark, מפעילים מסנן תצוגה של wlan.addr == YOUR_DEVICE'S_MAC ובודקים אם מופיעות חבילות.

2. מתחילים את הצילום

חשוב: תיעוד של לחיצת היד ה-4-כיוונית

אם האבטחה מופעלת ב-Wi-Fi, אתם צריכים לדעת את מפתחות ההצפנה כדי לפענח את החבילות שנתפסו. מפתחות ההצפנה נוצרים באמצעות לחיצת יד מרובעת (4-way handshake) שמתרחשת כשהמכשיר מתחבר לרשת, והם ייחודיים לכל חיבור בין מכשיר לבין נקודת הגישה.

לכן, חובה לתעד את לחיצת היד בעלת 4 השלבים כדי לפענח את המטען הייעודי (payload) של ה-Wi-Fi. אם המכשיר כבר מחובר לרשת כשמתחילים את תיעוד הנתונים, צריך לנתק את המכשיר ולחבר אותו מחדש (או להפעיל אותו מחדש) אחרי שמתחילים את תיעוד הנתונים.

צילום ב-Mac

לוחצים לחיצה ארוכה על מקש Option במקלדת, לוחצים על סמל ה-WLAN ואז בוחרים באפשרות Open Wireless Diagnostics…‎ (פתיחת אבחון אלחוטי):

תיעוד WLAN ב-Mac

בסרגל התפריטים של Wireless Diagnostics, בוחרים באפשרות Window > Sniffer:

‫Mac WLAN Sniffer

מגדירים את הערוץ והרוחב לערכים שאוחזרו קודם (צילום המסך לדוגמה הוא של ערוץ 60 ורוחב 40MHz):

רוחב וערוץ WLAN ב-Mac

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

כשמסיימים, לוחצים על Stop. קובץ *.pcap חדש נמצא ב-/var/tmp, והוא מכיל את כל התנועה. דוגמה לשם קובץ: (null)_ch100_2018-11-06_10.52.01.pcap.

צילום ב-Linux

  1. מכבים את ה-Wi-Fi. כדי לעשות את זה, אפשר:

    • שימוש בממשק המשתמש הגרפי (מומלץ)
    • שימוש ב-CLI של Network Manager כדי להורות לו להפסיק לנהל את ממשק ה-WLAN: sudo nmcli dev set <wlan-ifname> managed on
    • אם אתם משתמשים במנהל רשת אחר, בצעו את ההתאמות הנדרשות.
  2. שומרים את הסקריפט. מחליפים את <wlan-ifname> בשם של ממשק ה-Wi-Fi. במסמך הזה, שם הסקריפט הוא setup-wifi-capture.

    #!/usr/bin/env bash
    sudo ifconfig <wlan-ifname>  down
    sudo rfkill unblock wifi
    sudo iwconfig <wlan-ifname>  mode monitor
    sudo ifconfig <wlan-ifname>  up
    sudo iw dev <wlan-ifname> set channel $@
  3. מריצים את הסקריפט הקודם ומעבירים את הערוץ ואת רוחב הפס הגבוה ביותר להאזנה, לדוגמה ערוץ 153 עם רוחב פס של 80MHz:

    ./setup-wifi-capture chan 153 80 MHz
  4. פותחים את Wireshark. עכשיו אמורה להיות אפשרות לתעד חבילות בממשק ה-WLAN.

3. שיתוף הצילום

  1. משתמשים ב-WPA PSK (Raw Key) Generator כדי ליצור גיבוב (hash) של הסיסמה. כך אפשר לפענח את התיעוד בלי לדעת את הסיסמה בטקסט פשוט.

  2. כדי שאחרים יוכלו לפענח את התיעוד, צריך לשתף גם את ה-PSK שנוצר.

נספח

התקנת Wireshark

אפשר להתקין את Wireshark באמצעות apt install wireshark ב-Linux או להוריד אותו אונליין מאתר Wireshark.

הגדרת Wireshark לפענוח תנועה

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

באבטחת WPA2 ב-Wi-Fi, לא משתמשים ישירות ב-WPA2-PSK להצפנה ולפענוח של תנועה. הוא משמש בלחיצת יד של 4 כיוונים, שצריך לתעד כדי לפענח חבילות. עם זאת, אם אתם מנסים לתעד רק בעיות בחיבור ל-Wi-Fi או ניתוקים, שאפשר לזהות באמצעות מסגרות ניהול של Wi-Fi, אתם לא צריכים לתעד את לחיצת היד ה-4-כיוונית. בכל מקרה, כדאי לצלם את המסמך.

פותחים את Wireshark ואת דף ההעדפות (תפריט Wireshark > העדפות או **Cmd + , **).

  1. מוצאים את הקטע "IEEE 802.11" בקטגוריה "Protocols" ומוודאים שהאפשרות "Enable decryption" מסומנת:

    העדפות Wireshark ב-Mac

  2. לוחצים על הכפתור עריכה לצד התווית מפתחות פענוח.

  3. לוחצים על הלחצן "+" בפינה הימנית התחתונה ובוחרים באפשרות "wpa-pwd".

    ‫Mac Wireshark WPA וסיסמה

  4. לוחצים על עמודת המפתח של השורה החדשה שנוצרה (ממש ליד המחרוזת wpa-pwd), ומקלידים את ה-WPA2 PSK וה-SSID בפורמט <password>:<ssid>. לדוגמה, אם שם הרשת הוא MyHomeNetwork וה-WPA2 PSK הוא myp4ssword, מקלידים myp4ssword:MyHomeNetwork.

    ‫SSID של Wireshark ב-Mac

  5. לוחצים על "אישור" כדי לאשר.

מידע נוסף זמין במדריך הרשמי של Wireshark (עם צילומי מסך) בכתובת How to Decrypt 802.11.

אם משתמשים ב-tshark, צריך להעביר את הארגומנטים הבאים:

tshark -o wlan.enable_decryption:TRUE -o 'uat:80211_keys:"wpa-pwd","<psk>:<ssid>"'

צביעת נתוני Wireshark 802.11

באתר metageek.com יש פרופיל צבעים שימושי של 802.11: פרופיל להעלאת הגדרות של Wireshark.