תיעוד חבילות Wi-Fi מאפשר לכם לראות פרטים ואינטראקציות שמוסתרים לפני שהם מגיעים לתוכנה שפועלת במכשיר, ולכן התיעודים האלה הם כלי חשוב לטיפול בסוגים מסוימים של באגים.
השלבים העיקריים הם:
- מוצאים את הערוץ הנכון להאזנה.
- מתעדים את התנועה.
- לשתף את הצילום ואת ה-hash של סיסמת ה-WLAN.
1. בחירת הערוץ והרוחב המתאימים
רשתות WLAN פועלות בתדרים:
- ערוץ, שבדרך כלל מצוין באמצעות מספר. 1-13 מיועדים לערוצי 2.4GHz, 36-200 מיועדים לערוצי 5GHz
- עם רוחב ספציפי (20Mhz, 40Mhz, 80Mhz, 160MHz)
לכל נקודת גישה (לדוגמה, נתב, צומת רשת) ברשת יש בדרך כלל ערוץ ייחודי של 2.4GHz וערוץ של 5GHz, וצריך למצוא לאיזה מהם המכשיר מחובר. קיימות מספר אפשרויות:
שימוש בלוח הבקרה של הנתב
אם אתם משתמשים ב-Nest WiFi, דלגו על האפשרות הזו – המידע לא נחשף.
ברוב הנתבים יש רשימה של המכשירים המחוברים, ושל הערוץ ורוחב הפס שבהם הם משתמשים.
- במדריך הזה מוסבר איך למצוא את כתובת ה-IP של הנתב.
- עוברים לכתובת של הנתב בדפדפן האינטרנט, לדוגמה http://192.168.1.1.
- מתחברים לחשבון. שכחת את הסיסמה? חפשו תג על הנתב או השתמשו בסיסמאות לנתב.
מחפשים דף עם שם כמו "לקוחות" או "מכשירים מחוברים". לדוגמה, דף של נתב Netgear עשוי להיראות כמו בדוגמה הבאה, או כמו מכשירי Eero.
יכול להיות שתצטרכו לחפש במקום אחר בהגדרות כדי למפות את המידע משלב 4 לערוץ ולרוחב פס מסוימים. לדוגמה, בנתב של Netgear:
להשתמש ב-Mac, אם הוא כבר מחובר לאותו ערוץ
לוחצים על Option במקלדת ואז על סמל ה-WLAN בפינה השמאלית העליונה של שורת הסטטוס ב-Mac. אמור להופיע תפריט ה-WLAN הרגיל עם עוד כמה אפשרויות ופרטים. עוברים על האפשרויות הלא זמינות בתפריט ומחפשים את האפשרות שמוזכר בה "ערוץ":
`Channel 60 (DFS, 5GHz, 40MHz)`
לא ניתן למצוא את הערוץ והרוחב
אם השיטות האחרות לא עובדות, אתם יכולים לנסות:
מפרטים את כל הערוצים שבהם נקודות הגישה משתמשות (בדרך כלל 2 לכל נקודת גישה או נקודת רשת).
א. מומלץ בטלפון Android, אפשר להשתמש באפליקציה כמו Wifiman או Aruba Utilities.
א. ב-Mac, אפשר להשתמש ב-
/System/Library/PrivateFrameworks/Apple80211.framework/Resources/airport-sכדי להציג את רשימת האפשרויות.מבצעים תיעוד קצר (אפילו 15 שניות מספיקות) בכל אחד מהערוצים האלה, לפי ההוראות שבהמשך.
מתקינים את Wireshark (אפשר להיעזר במאמר התקנת Wireshark).
פותחים כל אחד מהתיעודים באמצעות Wireshark, מפעילים מסנן תצוגה של
wlan.addr == YOUR_DEVICE'S_MACובודקים אם מופיעות חבילות.
2. מתחילים את הצילום
חשוב: תיעוד של לחיצת היד ה-4-כיוונית
אם האבטחה מופעלת ב-Wi-Fi, אתם צריכים לדעת את מפתחות ההצפנה כדי לפענח את החבילות שנתפסו. מפתחות ההצפנה נוצרים באמצעות לחיצת יד מרובעת (4-way handshake) שמתרחשת כשהמכשיר מתחבר לרשת, והם ייחודיים לכל חיבור בין מכשיר לבין נקודת הגישה.
לכן, חובה לתעד את לחיצת היד בעלת 4 השלבים כדי לפענח את המטען הייעודי (payload) של ה-Wi-Fi. אם המכשיר כבר מחובר לרשת כשמתחילים את תיעוד הנתונים, צריך לנתק את המכשיר ולחבר אותו מחדש (או להפעיל אותו מחדש) אחרי שמתחילים את תיעוד הנתונים.
צילום ב-Mac
לוחצים לחיצה ארוכה על מקש Option במקלדת, לוחצים על סמל ה-WLAN ואז בוחרים באפשרות Open Wireless Diagnostics… (פתיחת אבחון אלחוטי):
בסרגל התפריטים של Wireless Diagnostics, בוחרים באפשרות Window > Sniffer:
מגדירים את הערוץ והרוחב לערכים שאוחזרו קודם (צילום המסך לדוגמה הוא של ערוץ 60 ורוחב 40MHz):
לוחצים על Start ומזינים את הסיסמה. עכשיו, נסו לשחזר את הבעיה.
חשוב לתעד את לחיצת היד ה-4-שלבית מחיבור, כפי שמתואר בקטע תיעוד לחיצת היד ה-4-שלבית.
כשמסיימים, לוחצים על Stop. קובץ *.pcap חדש נמצא ב-/var/tmp, והוא מכיל את כל התנועה. דוגמה לשם קובץ:
(null)_ch100_2018-11-06_10.52.01.pcap.
צילום ב-Linux
מכבים את ה-Wi-Fi. כדי לעשות את זה, אפשר:
- שימוש בממשק המשתמש הגרפי (מומלץ)
- שימוש ב-CLI של Network Manager כדי להורות לו להפסיק לנהל את ממשק ה-WLAN:
sudo nmcli dev set <wlan-ifname> managed on - אם אתם משתמשים במנהל רשת אחר, בצעו את ההתאמות הנדרשות.
שומרים את הסקריפט. מחליפים את
<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 $@מריצים את הסקריפט הקודם ומעבירים את הערוץ ואת רוחב הפס הגבוה ביותר להאזנה, לדוגמה ערוץ 153 עם רוחב פס של 80MHz:
./setup-wifi-capture chan 153 80 MHzפותחים את Wireshark. עכשיו אמורה להיות אפשרות לתעד חבילות בממשק ה-WLAN.
3. שיתוף הצילום
משתמשים ב-WPA PSK (Raw Key) Generator כדי ליצור גיבוב (hash) של הסיסמה. כך אפשר לפענח את התיעוד בלי לדעת את הסיסמה בטקסט פשוט.
כדי שאחרים יוכלו לפענח את התיעוד, צריך לשתף גם את ה-PSK שנוצר.
נספח
התקנת Wireshark
אפשר להתקין את Wireshark באמצעות apt install wireshark ב-Linux או להוריד אותו אונליין מאתר Wireshark.
הגדרת Wireshark לפענוח תנועה
הפעולה הזו לא נדרשת כדי לשתף את קובצי התיעוד, אלא רק אם רוצים לבחון בעצמכם את התנועה המפוענחת ב-Wireshark.
באבטחת WPA2 ב-Wi-Fi, לא משתמשים ישירות ב-WPA2-PSK להצפנה ולפענוח של תנועה. הוא משמש בלחיצת יד של 4 כיוונים, שצריך לתעד כדי לפענח חבילות. עם זאת, אם אתם מנסים לתעד רק בעיות בחיבור ל-Wi-Fi או ניתוקים, שאפשר לזהות באמצעות מסגרות ניהול של Wi-Fi, אתם לא צריכים לתעד את לחיצת היד ה-4-כיוונית. בכל מקרה, כדאי לצלם את המסמך.
פותחים את Wireshark ואת דף ההעדפות (תפריט Wireshark > העדפות או **Cmd + , **).
מוצאים את הקטע "IEEE 802.11" בקטגוריה "Protocols" ומוודאים שהאפשרות "Enable decryption" מסומנת:
לוחצים על הכפתור עריכה לצד התווית מפתחות פענוח.
לוחצים על הלחצן "+" בפינה הימנית התחתונה ובוחרים באפשרות "wpa-pwd".
לוחצים על עמודת המפתח של השורה החדשה שנוצרה (ממש ליד המחרוזת wpa-pwd), ומקלידים את ה-WPA2 PSK וה-SSID בפורמט
<password>:<ssid>. לדוגמה, אם שם הרשת הואMyHomeNetworkוה-WPA2 PSK הואmyp4ssword, מקלידיםmyp4ssword:MyHomeNetwork.
לוחצים על "אישור" כדי לאשר.
מידע נוסף זמין במדריך הרשמי של 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.