רחרחן

רַחְרְחַן (באנגלית: Sniffer) או רַחְרְחַן מָנוֹת (באנגלית: Packet Sniffer) הוא תוכנה או חומרה המאפשרת להאזין ולתעד תקשורת מחשבים העוברת בנקודה כלשהי ברשת. הרחרחן קולט את חבילות מידע היוצרות את התקשורת, מנתח אותן בהתאם ל-RFC הרלוונטי ומציג אותן למשתמש לאחר הניתוח.

==יכולות==
היקף חבילות המידע שנקלטות תלוי בנקודה שבה הרחרחן הותקן. אם הרחרחן הותקן כתוכנה על מחשב המהווה נקודת קצה ברשת, רק התעבורה שתגיע אליו תתועד. אם המחשבים ברשת מחוברים באמצעות רכזת (Hub), כל מחשב יוכל לקבל את התעבורה של כלל המחשבים המחוברים לאותה הרכזת. אם המחשבים מחוברים באמצעות מתג (switch), הוא לא יוכל לעשות זאת שכן המתג יעביר אליו רק את התעבורה המיועדת אליו (Broadcast לרשת שלו, Unicast אליו או Multicast לקבוצה עליה הוא רשום). כדי להתמודד עם בעיה זו, קיימות מספר שיטות המהתלות במתג או במחשב שאת התעבורה שלו מעוניינים לקבל:
* העברת התקשורת דרך המחשב עליו מותקן הרחרחן בשיטות התחזות שונות כגון ARP spoofing או DHCP spoofing, שליחת הודעות ICMP Redirect או MAC flooding.
* קבלה של הנתונים במקביל גם במחשב היעד וגם ברחרחן (למשל באמצעות שיקוף פורט).

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

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

ברשת אלחוטית, רחרחן המותקן על מחשב המחובר לרשת אלחוטית יכול לרחרח את כלל התעבורה שבערוץ מסוים.

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

==האיום האבטחתי והתמודדות עמו==
אחד משימושי הרחרחן הוא לצורכי תקיפת מחשבים וריגול אחר משתמשים ברשת. נוכחות של גורם תוקף ברשת מאפשרת לו במקרים מסוימים לקבל את תוכן התעבורה שמייצר משתמש אחר ברשת ולחקור אותה. האיום נובע מכך שקיימים פרוטוקולים המעבירים מידע רגיש כגון סיסמאות, מידע מסווג, מספר כרטיס אשראי וכדומה ללא הצפנה מתאימה. לעיתים הנתונים מוצפנים או מקודדים על ידי פונקציית גיבוב באופן שמאפשר פתיחה של הקידוד וחשיפת המידע הרגיש. הדרך להתמודד עם איום זה היא להקפיד להשתמש בחלופות המוצפנות: SSH (והאפליקציות המשתמשות בו: SCP ו-SFTP), ופרוטוקולים מבוססי TLS כגון HTTPS ו-FTPS ולהימנע מהעברת נתונים בפרוטוקולים הלא-מוצפנים.

==קישורים חיצוניים==

==הערות שוליים==

*
קטגוריה:תוכנות מערכת
קטגוריה:ניהול רשתות
קטגוריה:ציוד לתקשורת מחשבים
קטגוריה:אבטחת מידע