أمن الشبكات اللاسلكية — أمن الشبكات
أمن WiFi
بروتوكولات التشفير
WEP ❌
- Wired Equivalent Privacy
- مكسور تماماً! يُخترق في دقائق
- لا تستخدمه أبداً
WPA ⚠️
- WiFi Protected Access
- أفضل من WEP لكن له ثغرات
- تجنبه إن أمكن
WPA2 ✅
- الأكثر شيوعاً حالياً
- AES encryption
- آمن مع كلمة مرور قوية
WPA3 ✅✅
- الأحدث والأكثر أماناً
- حماية من Brute Force
- تشفير فردي لكل جهاز
هجمات WiFi الشائعة
1. Evil Twin
- نقطة وصول مزيفة بنفس الاسم
- الضحية يتصل بها ظناً أنها حقيقية
2. Deauthentication Attack
- إجبار الأجهزة على قطع الاتصال
- ثم التقاط Handshake
3. WPS Attack
- PIN مكون من 8 أرقام فقط
- يُكسر في ساعات
4. Dictionary Attack
- تجربة كلمات مرور شائعة
- على Handshake المُلتقط
حماية شبكتك
الإعدادات الأساسية ✅
- استخدم WPA3 أو WPA2
- كلمة مرور قوية (12+ حرف)
- عطّل WPS
- غيّر اسم الشبكة الافتراضي
- غيّر كلمة مرور الراوتر
الإعدادات المتقدمة
- MAC Filtering (محدود الفائدة)
- إخفاء SSID (محدود الفائدة)
- شبكة ضيوف منفصلة
- تحديث Firmware
# أدوات فحص WiFi (للتعليم)
import subprocess
import re
class WiFiSecurityChecker:
"""
فحص أمان WiFi للتعليم
⚠️ للاستخدام على شبكاتك فقط!
"""
@staticmethod
def explain_wifi_security():
"""شرح مستويات أمان WiFi"""
print("\n🔐 مستويات أمان WiFi")
print("=" * 50)
protocols = [
{
"name": "Open (بدون كلمة مرور)",
"security": "❌❌❌❌❌",
"note": "أي شخص يمكنه الاتصال والتجسس!"
},
{
"name": "WEP",
"security": "❌❌❌❌",
"note": "يُكسر في دقائق! لا تستخدمه"
},
{
"name": "WPA",
"security": "⚠️⚠️",
"note": "ثغرات معروفة، تجنبه"
},
{
"name": "WPA2-PSK (Personal)",
"security": "✅✅✅",
"note": "جيد مع كلمة مرور قوية"
},
{
"name": "WPA2-Enterprise",
"security": "✅✅✅✅",
"note": "للشركات، يحتاج RADIUS server"
},
{
"name": "WPA3",
"security": "✅✅✅✅✅",
"note": "الأفضل! استخدمه إن توفر"
}
]
for p in protocols:
print(f"\n{p['name']}")
print(f" الأمان: {p['security']}")
print(f" ملاحظة: {p['note']}")
@staticmethod
def password_strength_wifi(password):
"""تقييم قوة كلمة مرور WiFi"""
print(f"\n🔑 تقييم كلمة مرور WiFi")
print("=" * 50)
score = 0
issues = []
# الطول
if len(password) >= 20:
score += 30
elif len(password) >= 12:
score += 20
elif len(password) >= 8:
score += 10
else:
issues.append("❌ قصيرة جداً (< 8)")
# التنوع
if re.search(r'[a-z]', password):
score += 10
else:
issues.append("❌ أضف أحرف صغيرة")
if re.search(r'[A-Z]', password):
score += 10
else:
issues.append("❌ أضف أحرف كبيرة")
if re.search(r'[0-9]', password):
score += 10
else:
issues.append("❌ أضف أرقام")
if re.search(r'[!@#$%^&*(),.?":{}|<>]', password):
score += 15
else:
issues.append("⚠️ أضف رموز")
# كلمات شائعة
common = ['password', 'wifi', '12345678', 'qwerty', 'internet']
if password.lower() in common:
score = 0
issues.append("🔴 كلمة مرور شائعة جداً!")
# التقييم
if score >= 60:
strength = "🟢 قوية"
elif score >= 40:
strength = "🟡 متوسطة"
else:
strength = "🔴 ضعيفة"
print(f" كلمة المرور: {'*' * len(password)}")
print(f" القوة: {strength} ({score}/75)")
if issues:
print(" المشاكل:")
for issue in issues:
print(f" {issue}")
return score
@staticmethod
def security_checklist():
"""قائمة فحص أمان WiFi"""
print("\n📋 قائمة فحص أمان WiFi")
print("=" * 50)
checklist = [
("استخدام WPA3 أو WPA2", "تحقق من إعدادات الراوتر"),
("كلمة مرور قوية (12+ حرف)", "غيّرها إن كانت ضعيفة"),
("تعطيل WPS", "WPS → Disable"),
("تغيير كلمة مرور الراوتر", "لا تترك admin/admin!"),
("تحديث Firmware", "تحقق من تحديثات الراوتر"),
("تغيير SSID الافتراضي", "لا يكشف نوع الراوتر"),
("شبكة ضيوف منفصلة", "للزوار بدون وصول للشبكة الرئيسية"),
("تعطيل Remote Management", "إلا إذا كنت تحتاجه"),
]
print("\n [ ] قائمة المهام:")
for task, note in checklist:
print(f" [ ] {task}")
print(f" 💡 {note}")
@staticmethod
def detect_evil_twin_signs():
"""علامات Evil Twin Attack"""
print("\n🚨 علامات هجوم Evil Twin")
print("=" * 50)
signs = [
"شبكتان بنفس الاسم (SSID)",
"طلب إعادة إدخال كلمة المرور فجأة",
"انقطاع متكرر للاتصال",
"صفحة تسجيل دخول غير مألوفة",
"تحذيرات الشهادة في المتصفح",
"سرعة إنترنت أبطأ من المعتاد",
]
print("\n انتبه لهذه العلامات:")
for sign in signs:
print(f" ⚠️ {sign}")
print("\n 🛡️ الحماية:")
print(" - استخدم VPN على WiFi العام")
print(" - تحقق من BSSID (MAC) للشبكة")
print(" - تجنب إدخال بيانات حساسة")
# تشغيل
checker = WiFiSecurityChecker()
checker.explain_wifi_security()
checker.password_strength_wifi("MyW1F1P@ss!")
checker.security_checklist()
checker.detect_evil_twin_signs()اختبر فهمك