הרצאה מקיפה על tcpdump¶
מבוא¶
הכלי tcpdump הוא כלי עוצמתי ללכידת וניתוח תעבורת רשת במערכות Linux/Unix.
הוא מאפשר לנו לראות packets מידע שנשלחות ומתקבלות דרך כרטיסי הרשת, לבצע סינון מתקדם, לנתח תקשורת, לזהות התקפות סייבר ולבצע debugging של פרוטוקולים.
התקנה¶
במרבית הפצות לינוקס, tcpdump מגיע מותקן מראש. אם הוא לא קיים, ניתן להתקין אותו כך:
- Ubuntu/Debian:
- CentOS/RHEL:
- Arch Linux:
- בדיקת גרסה:
שימוש בסיסי¶
1. לcapture תעבורה על interface רשת¶
-i eth0– מאזין לתעבורה בinterface eth0.
לcapture תעבורה בכל הinterfaces¶
2. לcapture מספר מוגבל של packets¶
-c 10– לוכד 10 packets בלבד ומפסיק.
3. הצגת פלט בפורמט קריא¶
-n– מונע המרת IP לשמות מתחם (DNS).-v– מפרט מידע נוסף על כל packet.
4. הצגת פלט מפורט מאוד¶
-vvv– נותן מידע מלא על כל packet.
סינון תעבורה¶
5. לcapture packets לפי פרוטוקול¶
לcapture תעבורת HTTP¶
- מאזין רק לpackets שמיועדות ל-HTTP (פורט 80).
לcapture תעבורת HTTPS¶
לcapture תעבורת DNS¶
6. לcapture packets לפי כתובת IP¶
לcapture packets מכתובת ספציפית¶
- מציג packets שמגיעות מכתובת 192.168.1.100.
לcapture packets שמיועדות לכתובת מסוימת¶
לcapture packets בין שתי כתובות¶
7. לcapture packets לפי טווח כתובות (CIDR)¶
- מאזין לכל הכתובות ברשת 192.168.1.0/24.
8. לcapture packets לפי פורט¶
לcapture packets שמגיעות לפורט מסוים¶
- מאזין לpackets המיועדות ל-SSH (פורט 22).
לcapture packets שמגיעות או יוצאות מפורט מסוים¶
- מאזין לכל packets ה-HTTPS.
9. לcapture packets לפי פרוטוקול ספציפי¶
לcapture packets TCP בלבד¶
לcapture packets UDP בלבד¶
לcapture packets ICMP (Ping)¶
ניתוח packets¶
10. הצגת תוכן הpackets בפורמט HEX + ASCII¶
-X– מציג את תוכן הpacket גם ב-Hex וגם ב-ASCII.
11. הצגת מידע מלא כולל ה-Header של כל packet¶
-A– מציג תוכן טקסטואלי של הpacket.
12. לcapture מידע על packets גדולות יותר¶
-s 0– שומר את כל תוכן הpacket (ברירת מחדל היא רק 96 בתים ראשונים).
שמירה וניתוח packets¶
13. שמירת packets לקובץ (לניתוח מאוחר יותר)¶
-w– שומר את הפלט בקובץcapture.pcapלניתוח מאוחר.
14. קריאת קובץ packets (PCAP)¶
-r– טוען קובץ packets קודם.
15. ניתוח מתקדם עם Wireshark¶
אם רוצים לנתח את הpackets בגרפיקה נוחה יותר:
או:
סינון מתקדם (Boolean Logic)¶
- בדומה לwireshark גם פה אנחנו יכולים להפעיל bpf כדי לפלטר על פאקטות מסויימות בזמן התפיסה. (capture filter)
16. סינון packets עם מספר תנאים¶
- מאזין לpackets שמגיעות מכתובת
192.168.1.100ונשלחות לפורט80.
17. לcapture תעבורה חוץ מכתובת מסוימת¶
- מסנן את כל הכתובות חוץ מ-192.168.1.1.
18. לcapture תעבורה חוץ מפרוטוקול מסוים¶
- מסנן תעבורת ARP.
הגבלת מספר packets לזמן מוגבל¶
19. לcapture packets לזמן מסוים¶
- לוכד תעבורה למשך 60 שניות בלבד.