الـ Sniffing هو عملية مراقبة والتقاط كل حزم البيانات المارّة عبر شبكة معيّنة باستخدام برنامج أو جهاز عتاد. الـ Sniffing سهل في الشبكات القائمة على الـ Hub لأن الحركة على أي جزء تمرّ بكل الأجهزة المرتبطة به — لكن معظم الشبكات الحديثة تعمل على مفاتيح Switches.
الـ Hub يُرسل البيانات لكل البورتات بدون تمييز. الـ Switch يُسجِّل عنوان MAC المرتبط بكل بورت في جدول CAM ويُرسل البيانات للبورت الصحيح فقط — وده بيجعل الـ Passive Sniffing صعبًا في بيئة الـ Switch. المهاجم يحتاج التلاعب بوظيفة الـ Switch (ARP Spoofing أو MAC Flooding) لرؤية كل الحركة المارّة.
كل حاسوب على الشبكة المحلية (LAN) عنده عنوانان: MAC Address وIP Address. عنوان MAC محفوظ في كرت الشبكة (NIC) ويُستخدَم في طبقة Data Link (الطبقة الثانية في نموذج OSI) بدل عنوان IP لنقل إطارات البيانات. برامج الـ Sniffing بتُعطِّل الفلتر في NIC وبتضعها في Promiscuous Mode حتى يقدر الجهاز يرى وصول حركة الشبكة كلها وليس الخاصة به فقط.
| النوع | البيئة | الوصف | الكشف |
|---|---|---|---|
| Passive Sniffing | Shared Ethernet (Hub) | لا يُرسل أي حزم — يلتقط ويراقب فقط. الشبكة كلها ترى حركة بعضها. أيضًا عبر Trojan مُثبَّت يُفعِّل Sniffer مُخفيًا | صعب جدًا — لا توجد حركة مُولَّدة |
| Active Sniffing | Switched Ethernet | يحقن حركة مرور في الشبكة لرؤية الحزم. تقنياته: MAC Flooding، ARP Poisoning، DNS Poisoning، DHCP Attacks، Switch Port Stealing، Spoofing | أسهل نسبيًا بسبب الحركة المُولَّدة |
الـ Passive Sniffing يتميّز بميزة تخفٍّ كبيرة على الـ Active Sniffing — لكنه محدود بشبكات الـ Hub فقط. الشبكات الحديثة تُستخدَم فيها الـ Switches فتُجبر المهاجم على اللجوء للـ Sniffing النشط.
المهاجم يجد الـ Switch المناسب ويوصّل جهازه أو Laptop بأحد بورتاته.
يستخدم أدوات اكتشاف الشبكة لتحديد معلومات كطوبولوجيا الشبكة.
بتحليل الطوبولوجيا، يُحدِّد جهاز الضحية المراد استهداف هجماته عليه.
يُرسل رسائل ARP مزيَّفة (Spoofed) لتحويل حركة الضحية.
كل الحركة من الضحية بتمرّ الآن عبر جهاز المهاجم قبل وصولها للوجهة الحقيقية.
يرى الآن كل الحزم المُرسَلة والمستقبَلة من الضحية — كلمات المرور، أسماء المستخدمين، بيانات بطاقات الائتمان، والأرقام السرية.
| البروتوكول | البورت | نقطة الضعف |
|---|---|---|
| Telnet / Rlogin | 23 | نقل البيانات بـ Plaintext — المهاجم يعمل Sniffing لضغطات المفاتيح كاملةً بما فيها كلمات المرور |
| HTTP | 80 | نقل بيانات المستخدمين عبر الشبكة بـ Plaintext — اعتراض بيانات الاعتماد |
| SMTP | 25 | غالبًا يُرسل رسائل بـ Cleartext دون أي حماية من الـ Sniffing |
| SNMP v1/v2 | 161 | لا يوفّر أمانًا قويًا — نقل البيانات بـ Cleartext |
| POP | 110 | تطبيقات أمان ضعيفة — البيانات في Cleartext |
| FTP | 21 | لا يوفّر تشفيرًا — المهاجم يعمل Sniffing لبيانات الاعتماد بأدوات كـ hashcat |
| IMAP | 143 | أمان غير كافٍ — يسمح للمهاجم بالحصول على البيانات بـ Cleartext |
| NNTP | 119 | لا يُشفِّر البيانات |
| TFTP | 69 (UDP) | لا مصادقة ولا تشفير — البيانات متاحة لأي جهاز على نفس الشبكة |
| المفهوم | الوصف |
|---|---|
| Hardware Protocol Analyzer | جهاز عتاد يُفسِّر الحركة المارّة عبر الشبكة بدون تعديل الجزء المخصَّص — يلتقط إشاراتٍ ويحلّل محتوى كل حزمة. أمثلة: VIAVI Xgig 1000، SierraNet M1288 |
| SPAN Port (Port Mirroring) | خاصية في مفاتيح Cisco — تُرسل نسخة من كل حزمة تمرّ بالمفتاح لبورت مخصَّص للمراقبة. مصدر واحد أو أكثر، ووجهة واحدة فقط. تُستخدَم لتحليل الحركة وكشف الأخطاء |
| Active Wiretapping | هجوم MITM — مراقبة وتسجيل حركة الاتصال مع إمكانية تعديل أو حقن بيانات |
| Passive Wiretapping | التنصّت أو التجسّس — مراقبة وتسجيل الحركة فقط بدون تعديل |
| Lawful Interception (LI) | اعتراض قانوني لاتصالات البيانات بين نقطتَين بهدف المراقبة على شبكات الاتصال التقليدية وVoIP والبيانات. تُنفَّذ من وكالات إنفاذ القانون (LEAs) بموافقة مزوّد الخدمة |
جدول CAM (Content Addressable Memory) هو جدول ديناميكي ذو حجم ثابت في الـ Switch — يُخزِّن معلومات كعناوين MAC المتاحة على البورتات الفيزيائية مع معاملات الـ VLAN. عند استقبال الـ Switch بيانات، يبحث عن عنوان MAC الوجهة في جدول CAM ويُرسل البيانات عبر البورت المرتبط به مباشرةً.
جدول CAM له حجم محدود — يجعله عرضة لهجمات MAC Flooding اللي بتُغرقه بعناوين MAC مزيَّفة. بعد امتلاء الجدول، يدخل الـ Switch وضع Fail-Open Mode وبيبدأ يعمل كـ Hub — يُبثّ (Broadcast) كل الحركة الواردة لكل البورتات، مما يُسهِّل الـ Sniffing. هذا الهجوم يملأ أيضًا جداول CAM المفاتيح المجاورة.
عنوان MAC مكوَّن من 48 بت مقسَّمة لقسمين: أول 24 بت هي OUI (Organizationally Unique Identifier) تُحدِّد المصنِّع، والـ 24 بت الأخيرة هي الرقم التسلسلي للـ NIC. مثال: D4-BE-D9-14-C8-29 — الأول D4BED9 = Dell Inc.، الثاني 14C829 = الرقم التسلسلي.
تقنية لاختراق أمان مفاتيح الشبكة — المهاجم يُغرق الـ Switch بعناوين MAC وIP عشوائية مزيَّفة مما يملأ جدول CAM ويُجبر الـ Switch على العمل كـ Hub. أداة macof (جزء من مجموعة dsniff) تُغرق جدول CAM بمعدّل 131,000 إدخال في الدقيقة.
macof -i eth0 # تشغيل هجوم MAC Flooding على الواجهة eth0
macof -i eth0 -n 1000 # إرسال 1000 إدخال MAC عشوائي فقط
يستغلّ جدول MAC الديناميكي للـ Switch بإرسال حزم ARP Gratuitous مزيَّفة متكرّرة — المهاجم ينتحل عنوان MAC الجهاز المستهدَف كمصدر ويُدخلها من بورت الجهاز المهاجم، مما يُنشئ حالة تنافس (Race Condition) بين الحركة الشرعية والحزم المزيَّفة.
ثلاثة أجهزة: Host A، Host B (الهدف)، Host C (المهاجم). المهاجم يُرسل ARP Reply زائفة بعنوان MAC منتحَل لـ Host B — الـ Switch يُسجِّل إن عنوان MAC الخاص بـ Host B متصل ببورت المهاجم. نتيجة: كل الحزم الموجَّهة لـ Host B تذهب لـ Host C تلقائيًا. المهاجم ممكن يُبطئ Host B (DoS) لضمان فوزه بالسباق.
Port Security خاصية تُحدِّد عناوين MAC المصرَّح لها بالوصول للبورت وتُقيِّدها. إذا وصل جهاز بعنوان MAC غير مُدرَج، أو وصل عدد الأجهزة للحد الأقصى — يحدث انتهاك أمني ويُرسَل تنبيه SNMP. يُقيِّد Port Security هجمات MAC Flooding ويُقفل البورتات.
ثلاث طرق لإضافة عناوين MAC الآمنة: يدوياً عبر أمر switchport port-security mac-address، بشكل ديناميكي عبر تعلّم الأجهزة المتصلة، أو مزيج من الاثنتين.
DHCP (Dynamic Host Configuration Protocol) بروتوكول Client-Server يُوفِّر IP Address لأجهزة الشبكة. بالإضافة للـ IP، يُقدِّم إعدادات مثل Default Gateway وSubnet Mask. سيرفر DHCP يحتفظ بقاعدة بيانات لـ: معاملات TCP/IP الصالحة، عناوين IP المتاحة، ومدة الإيجار (Lease Duration).
في هجوم DHCP Starvation، المهاجم يُغرق سيرفر DHCP بطلبات DHCP كثيرة ويستخدم كل عناوين IP المتاحة في نطاق DHCP. النتيجة: السيرفر لا يستطيع إصدار أي عنوان IP جديد، مما يُؤدي إلى هجوم DoS — المستخدمون الشرعيون لا يستطيعون الحصول على IP أو تجديده والوصول للشبكة. أداة Yersinia تُرسل عدد كبير من الطلبات بعناوين MAC مزيَّفة.
بعد نجاح DHCP Starvation واستنزاف مساحة IP، يُنشئ المهاجم سيرفر DHCP مزيَّف على الشبكة خارج سيطرة مدير الشبكة. السيرفر المزيَّف ينتحل صفة السيرفر الشرعي ويُقدِّم عناوين IP ومعلومات شبكية للعملاء، ويعمل كـ Default Gateway. العملاء المتصلون بالسيرفر المزيَّف يصبحون ضحايا هجمات MITM.
تفعيل DHCP Snooping على الـ Switch — يُميِّز بين بورتات موثوقة (Trusted) مرتبطة بسيرفرات DHCP شرعية وبورتات غير موثوقة (Untrusted) لا تقبل رسائل DHCP Offer. أدوات هجوم إضافية: mitm6، Ettercap، Gobbler.
ARP (Address Resolution Protocol) بروتوكول TCP/IP عديم الحالة (Stateless) يُحوِّل عناوين IP لعناوين MAC المرتبطة بها. يُستخدَم لما يريد جهاز إرسال حزمة لجهاز آخر ويحتاج معرفة عنوان MAC الوجهة. نظام التشغيل يُحافظ على جدول ARP مُولَّد من الردود المستقبَلة على طلبات ARP.
الجهاز المصدر يُنشئ حزمة ARP Request تحتوي على MAC الأصل وIP الأصل وIP الوجهة، ويُرسلها للـ Switch.
يقرأ MAC الأصل ويُحدِّث جدوله. إذا لم يجد الوجهة، يُبثّ الطلب لكل الشبكة.
فقط الجهاز الذي يتطابق IP الوجهة مع IP الخاص به يردّ بـ ARP Reply يحتوي على MAC الخاص به.
الجهاز المصدر يُحدِّث جدول ARP الخاص به بإدخال IP وMAC الوجهة ويبدأ الاتصال.
ARP لا يُوفِّر أي وسيلة للتحقق من صحة الجهاز الرادّ — حتى الأجهزة التي لم تُرسل ARP Request تقبل ARP Replies من أجهزة أخرى. المهاجم يستغلّ هذا الخلل بإنشاء ردود ARP مزيَّفة تحتوي على IP وMAC مُنتحَلَين — جهاز الضحية يقبلها بشكل أعمى ويُدخلها في جدول ARP الخاص به.
# إعادة توجيه حزم الهدف للمهاجم بتزوير ردود ARP
arpspoof -i eth0 -t <target_host> <gateway>
# مثال: arpspoof -i eth0 -t 192.168.1.10 192.168.1.1
# تفعيل IP Forwarding لتمرير الحزم بعد الاعتراض (MITM)
echo 1 > /proc/sys/net/ipv4/ip_forward
أداة Capsa Portable Network Analyzer تُستخدَم للكشف عن ARP Spoofing.
انتحال MAC يعني تزوير عنوان MAC الخاص بالجهاز بعنوان MAC مستخدم شرعي آخر على الشبكة. المهاجم أولًا يعمل Sniffing للشبكة ليجد عناوين MAC للعملاء النشطين المتصلين ببورتات الـ Switch، ثم ينتحل أحدها. إذا نجح، يستقبل كل الحركة الموجَّهة لذلك العميل ويأخذ هويته.
للتغيير في Windows 11: Control Panel ← Network and Internet ← Network and Sharing Center ← Ethernet ← Properties ← Configure ← Advanced ← Network Address ← كتابة عنوان MAC الجديد (بدون `:`)، ثم التحقق عبر ipconfig /all. أداة MAC Address Changer تُنشئ عنوان MAC عشوائي وتُعيد الأصلي عند الحاجة.
IRDP (ICMP Router Discovery Protocol) يسمح للأجهزة باكتشاف IP الراوترات النشطة على الشبكة الفرعية بالاستماع لرسائل الإعلان والاستفسار. المهاجم يُرسل رسائل Router Advertisement مزيَّفة مع مستوى تفضيل ومدة تشغيل عالية — لأن IRDP لا يتطلّب مصادقة، الجهاز المستهدَف سيُفضِّل المسار الذي عرّفه المهاجم على مسار DHCP الشرعي.
| هجوم IRDP Spoofing | الأثر |
|---|---|
| Passive Sniffing | في الشبكة المُبدَّلة، المهاجم يُعيد توجيه الحركة الخارجية للأجهزة المستهدَفة عبر جهازه |
| MITM | بعد بدء الـ Sniffing، المهاجم يعمل كـ Proxy بين الضحية والوجهة ويُحاول تعديل الحركة |
| DoS | يُضيف مداخل مسار خاطئة في جدول توجيه الضحية — العنوان الخاطئ يُسبّب DoS |
الدفاع: تعطيل IRDP على الأجهزة إذا سمح نظام التشغيل بذلك.
طريقة هجوم شبكي للوصول غير المصرَّح به لموارد VLAN آخر — يستهدف تجاوز ضوابط تقسيم الشبكة المصمَّمة لعزل حركة المرور. الشبكات ذات التطبيق الضعيف أو الإعدادات الخاطئة عُرضة لهذا الهجوم.
| أسلوب VLAN Hopping | الآلية |
|---|---|
| Switch Spoofing | يوصّل المهاجم Switch مزيَّف بالشبكة ويخدع Switch الشرعي لإنشاء Trunk Link بينهما — حركة VLANs المتعدّدة تمرّ للـ Switch المزيَّف. ينجح فقط إذا كان الـ Switch الشرعي يفاوض على Trunk أو البورت مُهيَّأ بـ "dynamic auto" أو "dynamic desirable" أو "trunk" |
| Double Tagging | المهاجم يُضيف إطار Ethernet بعلامتَي 802.1Q — الخارجية = VLAN الأصلي (Native) للمهاجم، الداخلية = VLAN الهدف. الـ Switch يُزيل العلامة الخارجية ويُوصِّل الإطار للـ Trunk وفقًا للعلامة الداخلية. يعمل فقط إذا كانت بورتات الـ Switch مُهيَّأة بـ Native VLANs |
في هجوم STP (Spanning Tree Protocol)، المهاجم يوصّل Switch مزيَّف بالشبكة لتغيير عمل بروتوكول STP وعمل Sniffing لكل حركة الشبكة. STP يُزيل الحلقات المحتملة في الشبكات المُبدَّلة ويُعيِّن Root Bridge داخل الشبكة لتتبع المسار الأمثل. المهاجم بإضافة Switch مزيَّف بأولوية أعلى يُمكنه أن يُصبح Root Bridge ويُعيد توجيه الحركة عبر جهازه.
DNS يُترجم أسماء النطاقات (مثل www.example.com) لعناوين IP. في DNS Poisoning (يُعرف أيضًا بـ DNS Spoofing)، المهاجم يخدع سيرفر DNS ليُصدِّق إنه استقبل معلومات أصيلة بينما في الواقع لم يستقبل. يُحاول تحويل الضحية لسيرفر خبيث بدل السيرفر الشرعي عبر التلاعب بمداخل جدول DNS — استبدال IP الموقع الحقيقي بـ IP خادم المهاجم.
| الأسلوب | الوصف |
|---|---|
| Intranet DNS Spoofing | ينفَّذ على شبكة LAN مُبدَّلة بمساعدة ARP Poisoning — المهاجم يكون متصلًا بالـ LAN وقادرًا على عمل Sniffing للحزم. بعد الحصول على معرِّف طلب DNS، يُرسل ردًّا خبيثًا للمُرسِل قبل أن يردّ سيرفر DNS الحقيقي |
| Internet DNS Spoofing | تسمّم DNS عبر الإنترنت بانتحال هوية سيرفر DNS المُفضَّل ومطابقة معرِّف طلب DNS |
| Proxy Server DNS Poisoning | المهاجم يُنشئ Proxy Server مع DNS مزيَّف كإدخال DNS أساسي. يُغيِّر إعدادات Proxy الضحية بـ Trojan لتوجيه حركتها للموقع المزيَّف حيث يُمكن عمل Sniffing لبياناتها السرية ثم إعادة توجيه الطلب للموقع الحقيقي |
| DNS Cache Poisoning | تعديل أو إضافة سجلات DNS مزيَّفة في ذاكرة Cache لمُحلِّل DNS — الـ Cache يحتفظ بأسماء النطاقات المُحلَّلة مؤخرًا. إذا لم يستطع مُحلِّل DNS التحقق من مصدر الردود، يُخزِّن المداخل الخاطئة محليًا ويُقدِّمها للمستخدمين الذين يطلبون نفس النطاق |
| SAD DNS Attack | متغيِّر جديد من DNS Cache Poisoning — يستغلّ القنوات الجانبية (Side Channels) وثغرات في برمجيات DNS القديمة. يُحقن سجلات DNS ضارة في Cache لتحويل كل الحركة نحو سيرفرات المهاجم |
حتى بعد تصحيح البيانات الأصلية على سيرفر DNS الحقيقي، الـ Cache المُسمَّم في أجهزة المستخدمين وسيرفرات DNS الوسيطة قد يستمر في توجيه المستخدمين للموقع الخبيث لحين انتهاء مدة TTL (Time to Live) الخاصة بالإدخال المزيَّف.
أداة DerpNSpoof تُساعد في تزوير حزم استعلام DNS لعنوان IP معيّن أو مجموعة Hosts في الشبكة.
كشف الـ Sniffer ليس سهلًا لأنه يُشغِّل NIC في Promiscuous Mode ولا يُرسل بيانات — لا يترك أثرًا مباشرًا. طريقة Reverse DNS Lookup تُساعد في كشف الـ Sniffers غير المستقلّة. بالإضافة لأدوات مثل Nmap للكشف عن Promiscuous Mode.
وضع في الـ NIC يسمح للجهاز بالتقاط وقراءة كل حزمة شبكية تصل إليه كاملةً، بصرف النظر عن عنوان الوجهة. الـ Sniffer يعمل في هذا الوضع.
الاتصال بالشبكة المستهدَفة وتحديد طوبولوجيا الشبكة بأدوات اكتشاف الشبكة — تحديد الأجهزة المستهدَفة وعناوين IP وMAC الخاصة بها.
تشغيل Sniffer (كـ Wireshark أو tcpdump) على الواجهة الصحيحة — تُعطَّل فلاتر NIC ويبدأ التقاط كل الحزم.
اختيار الأسلوب المناسب:
في Linux: echo 1 > /proc/sys/net/ipv4/ip_forward — يضمن تمرير الحزم المعترضة لوجهتها الحقيقية لتجنّب توقف الاتصال وكشف الهجوم.
تصفية الحزم للبروتوكولات الضعيفة (HTTP، FTP، TELNET، SMTP) — استخراج بيانات الاعتماد والمعلومات الحساسة من الحزم الملتقَطة.
إعادة جدول ARP للحالة الأصلية واستعادة إعدادات DNS لتفادي إشارات كشف واضحة.
| التقنية | الهدف | الأثر | الأداة |
|---|---|---|---|
| MAC Flooding | جدول CAM للـ Switch | Switch يعمل كـ Hub → يُبثّ الحركة لكل البورتات | macof |
| ARP Poisoning | جداول ARP للأجهزة | MITM — تحويل الحركة عبر المهاجم | arpspoof، Ettercap |
| DHCP Starvation | سيرفر DHCP | DoS — استنزاف نطاق IP كامل | Yersinia، Gobbler |
| Rogue DHCP Server | العملاء الجدد | MITM — العملاء يستخدمون سيرفر مزيَّف | mitm6، Ettercap |
| DNS Cache Poisoning | Cache في مُحلِّل DNS | إعادة توجيه لموقع خبيث | DerpNSpoof |
| Switch Spoofing | مفاوضة Trunk | وصول لحركة VLANs متعدّدة | Yersinia |
| Double Tagging | VLAN Native | القفز لـ VLAN آخر | يدوي/Scapy |
| STP Attack | Root Bridge Election | إعادة توجيه الحركة عبر Switch مزيَّف | Yersinia |
# MAC Flooding
macof -i eth0
# ARP Spoofing (MITM)
echo 1 > /proc/sys/net/ipv4/ip_forward
arpspoof -i eth0 -t <victim_ip> <gateway_ip>
arpspoof -i eth0 -t <gateway_ip> <victim_ip>
# Syntax أداة arpspoof
arpspoof -i [Interface] -t [Target Host]
# فحص جدول ARP
arp -a # Windows/Linux
arp -n # Linux
# Promiscuous Mode (الكشف)
ip link show eth0 | grep PROMISC
ifconfig eth0 | grep PROMISC
| بروتوكول آمن | بديل عن | التشفير |
|---|---|---|
| SSH (22) | Telnet (23) / Rlogin | كامل |
| HTTPS (443) | HTTP (80) | TLS/SSL |
| SMTPS (465/587) | SMTP (25) | TLS |
| SNMPv3 | SNMPv1/v2 (161) | كامل + مصادقة |
| SFTP / SCP | FTP (21) | كامل |
| IMAPS (993) | IMAP (143) | TLS/SSL |
| POP3S (995) | POP3 (110) | TLS/SSL |
الموديول ده ناقش مفاهيم الـ Sniffing وعمل الـ Sniffer في طبقة Data Link من نموذج OSI. غطّى تقنيات الـ Sniffing المتنوّعة — هجمات MAC (Flooding، Switch Port Stealing)، هجمات DHCP (Starvation، Rogue Server)، تسمّم ARP وتهديداته، هجمات الانتحال (MAC Spoofing، IRDP، VLAN Hopping، STP)، وتسمّم DNS بتقنياته الخمس. كمان وضَّح الأدوات المستخدَمة في كل هجوم، وختم بالإجراءات المضادة وطرق كشف الـ Sniffing.
الـ Sniffing مش مجرّد أداة مراقبة — هو الخطوة السابقة لمعظم هجمات الشبكات الأخرى. اعتراض بيانات الاعتماد عبر ARP Poisoning بيُستخدَم للحركة الجانبية، DNS Poisoning بيُمهِّد لهجمات Phishing متطوّرة، وMAC Flooding بيُوفِّر رؤية كاملة للشبكة لأول خطوة في تحليل البنية التحتية. فهم آليات هذه الهجمات بعمق هو ما يُمكِّن المحلّل من الكشف الفعّال والمبكِّر.
أسئلة هذا الموديول غالبًا تُركِّز على: الفرق بين Passive وActive Sniffing (وفي أي بيئة يُستخدَم كل منهما)، ماذا يحدث لما يمتلئ جدول CAM (Fail-Open Mode)، الفرق بين ARP Spoofing وSwitch Port Stealing، آلية Rogue DHCP Server كـ MITM، وأنواع DNS Poisoning الأربعة (Intranet، Proxy Server، Cache، SAD DNS). كذلك أنواع VLAN Hopping (Switch Spoofing vs Double Tagging) وشروط نجاح كل منهما.
نهاية نوتس الموديول الثامن — Sniffing