הרצאה מקיפה על Scapy – כלי וספרייה לניתוח ותפעול packets רשת¶
שימו לב, ההרצאה רלוונטית לאנשים שיודעים לכתוב קוד בפייתון! ואם אתם לא, מוזמנים לעשות את קורס "קורס תכנות בסיסי" המוצע באתר.
מבוא¶
הספרייה Scapy היא ספריית Python רבת-עוצמה המאפשרת יצירה, שליחה, capture, וניתוח של packets רשת.
בניגוד לכלים כמו tcpdump או Wireshark, שמתרכזים רק בcapture וניתוח, Scapy מאפשר גם יצירה ושינוי של packets בזמן אמת.
🔹 השימושים המרכזיים של Scapy:
- ניתוח תעבורה (כמו
tcpdump/Wireshark) - יצירת packets מותאמות אישית
- תקיפת רשתות
- שינוי ותקיפה של פרוטוקולים
- סריקות רשת (בדומה ל-Nmap)
- זיוף packets (Packet Spoofing)
התקנה והכנה¶
התקנת Scapy¶
📌 דרישות מקדימות:
לפני ההתקנה, ודא ש-Python מותקן (Python 3.6+ מומלץ).
התקנה ב-Ubuntu/Debian¶
התקנה ב-Windows ו-MacOS¶
בדיקת התקנה¶
שימוש בסיסי¶
📌 Scapy יכול לעבוד בשני מצבים:
- מצב אינטראקטיבי (Shell): הפעלה דרך הטרמינל (
scapy). - סקריפטים ב-Python: שימוש בספרייה בתוך קוד Python.
פתיחת Shell אינטראקטיבי¶
או ב-Python:
capture packets רשת¶
1. הcapture packets עם sniff()¶
- לוכד 10 packets רשת מכל interface.
2. הcapture packets מפורטות¶
- מאזין ל-eth0 ומציג תקציר לכל packet.
3. הcapture packets HTTP בלבד¶
- לוכד 5 packets HTTP (פורט 80).
יצירת ושליחת packets¶
4. שליחת Ping (ICMP Echo Request)¶
- שולח Ping ל-
8.8.8.8.
5. שליחת packet TCP לפורט 80¶
- שולח packet TCP לפורט 80 בכתובת
192.168.1.1.
6. שליחת UDP ל-DNS (פורט 53)¶
- שולח בקשת DNS לשרתי
Google DNS.
סריקות רשת (Nmap עם Scapy)¶
7. סריקת פתיחות פורטים¶
- שולח packets SYN לכתובת
192.168.1.1לפורטים22, 80, 443.
8. גילוי כתובות ברשת (ARP Scan)¶
- מגלה מכשירים פעילים ברשת
192.168.1.0/24.
זיוף packets והתקפות רשת¶
9. זיוף packet IP ושינוי כתובת מקור¶
- שולח packet Ping מזויפת עם כתובת מקור
1.2.3.4.
10. התקפת SYN Flood¶
- שולח 100 packets SYN עם כתובות IP מזויפות.
11. התקפת ARP Spoofing¶
- מתחזה למחשב
192.168.1.100מול הנתב192.168.1.1.
ניתוח תוכן packets¶
12. ניתוח packet ICMP¶
- מציג את מבנה הpacket.
13. הדפסת תוכן packets TCP¶
- מציג את כל השדות של packets TCP.
שימוש במודולים מתקדמים¶
14. המרת packet לפורמט Hex¶
- מציג את הpacket בפורמט הקסדצימלי.
15. שמירת packets לקובץ (PCAP)¶
- שומר 10 packets לקובץ
capture.pcap.
16. קריאת packets מקובץ PCAP¶
- קורא ומציג packets מקובץ Wireshark (PCAP).