الخلاصة
- يستغل إغراق SYN فجوة زمنية: يحجز الخادم حالة اتصال نصف مفتوح قبل اكتمال المصافحة، فتستطيع طلبات رخيصة ملء طابور محدود.
- يقارن RFC 4987 دفاعين عند الطرف النهائي: حفظ سجل أصغر في مخبأ SYN محدود، أو عدم حفظ الحالة وإعادة بنائها من SYN Cookie يعيده ACK صالح.
عندما تصل رسالة SYN، يتخذ الخادم المستمع قراراً يبدو صغيراً. يتذكر المحاولة، ويرسل SYN-ACK، ثم ينتظر. هذا سلوك عادي مع عميل شرعي، لكنه بالنسبة إلى المهاجم ائتمان مدفوع مقدماً: ينفق الخادم الذاكرة وعمل المؤقتات قبل أن يثبت العميل المزعوم أنه يستطيع حتى سماع الرد.
ينظم RFC 4987 الهجوم حول هذا التفاوت. تحتفظ آلية TCP التقليدية بحالة SYN-RECEIVED ما دامت المصافحة غير مكتملة. طابور الاتصالات نصف المفتوحة محدود. إذا دخلت الطلبات أسرع من استرداد السجلات، فلن تجد الاتصالات الشرعية الجديدة مكاناً. نطاق الوثيقة هو استنزاف حالة TCP على المضيف وتعطيل التطبيق المستمع، وليس الحالة المختلفة التي يستنزف فيها حجم الحزم سعة وصلة الشبكة أولاً.
يسهّل انتحال عنوان المصدر إرسال رد لا يجيب عنه أحد، لكنه ليس شرطاً لكل هجوم. يمكن لأجهزة مخترقة أن ترسل من عناوين صالحة وقابلة للتوجيه وتحافظ على الضغط نفسه. العناصر الأساسية أبسط: كل SYN يسبب تخصيصاً، ومخزون الحالة نصف المفتوحة محدود، ومعدل الوصول يتجاوز معدل الاسترداد. في الآلية التي يصفها RFC، يقع الضرر المباشر على الاتصالات الواردة الجديدة إلى المنفذ المستهدف، لا على الاتصالات التي تأسست بالفعل.
بعض الحلول البديهية تحرك العتبة فقط. توسيع backlog يجعل المدافع يشتري ذاكرة إضافية ويمنح المهاجم رقماً أكبر لملئه. تقصير مؤقت SYN-RECEIVED يحرر السجلات مبكراً، لكنه قد يسقط عميلاً شرعياً أبطأته الشبكة؛ ويستطيع المهاجم رفع وتيرته. إعادة استخدام أقدم كتلة تحكم نصف مفتوحة تجعل العمر معيار التضحية من دون معرفة الطرف الحقيقي. يساعد ترشيح الدخول عندما يعتمد الهجوم على مصدر منتحل، لكن لا يمكن افتراض نشره عالمياً، كما لا يوقف شبكات الأجهزة المخترقة ذات العناوين القابلة للاستخدام.
ذاكرة أقل وحدود أوضح
يخفض مخبأ SYN ثمن الرسالة الأولى. بدلاً من إنشاء كتلة تحكم TCP كاملة فوراً، يحتفظ الخادم بسجل أصغر يكفي لاستكمال المصافحة لاحقاً. للمخبأ سقف محدد. ويصف RFC أيضاً توزيع السجلات على حاويات بواسطة تجزئة تستخدم سراً. لو كانت الدالة متوقعة، لأمكن للمهاجم ترك بقية المخبأ فارغاً وتركيز طلباته في حاوية واحدة. يجعل السر هذا التركيز أصعب، بينما يضع الحد الأعلى سقفاً للذاكرة ولعمل البحث.
يبقى المخبأ حالة يجب إدارتها. عليه إنهاء السجلات القديمة والحفاظ على القدرة على إعادة إرسال SYN-ACK إذا ضاع. إرسال رد مرة واحدة ثم نسيان واجب الإعادة يحول فقداً عادياً إلى فشل اتصال. الفائدة ليست محو سلوك TCP، بل تأجيل الكائن المكلف مع الاحتفاظ بالحد الأدنى اللازم للوصول إلى ACK النهائي.
وضع الإيصال داخل الرد
تدفع SYN Cookie المبدأ نحو مسار عديم الحالة. لا يحتفظ الخادم بسجل SYN-RECEIVED للمحاولة، بل يبني رقم التسلسل الابتدائي بحيث يعيد ACK النهائي معلومات تكفي للتحقق من التبادل وإعادة بناء الاتصال. لا تُخصص كتلة التحكم الكاملة إلا بعد قبول ذلك ACK.
يعرض الملحق A مثالاً يستخدم رقم تسلسل البادئ، وترميزاً للحجم الأقصى للمقطع، وعداداً زمنياً، والعناوين والمنافذ، ودالة سرية. عند عودة ACK يفحص الخادم القيمة باستخدام سره وقيم حديثة للعداد. هذا إيصال مضغوط لمصافحة محددة، وليس مصادقة لشخص أو تطبيق. إنه يشير، ضمن قدرة البناء على مقاومة التخمين، إلى أن مرسل ACK يملك معلومة مشتقة من SYN-ACK؛ ولا ينشئ هوية دائمة.
لغياب الحالة ثمن دلالي أيضاً. يحتفظ TCP عادة بخيارات تم التفاوض عليها بين SYN وACK، لكن مساحة الترميز داخل Cookie محدودة. لذلك قد تقيد التصاميم الشائعة توسيع النافذة أو SACK أو حالة خيارات مستقبلية. ويناقش RFC كذلك البيانات المحمولة مع SYN. إذا ضاع ACK النهائي وكان تطبيق الخادم ينتظر بيانات العميل قبل أن يتكلم، فقد لا توجد حالة تسمح بإعادة إرسال SYN-ACK كالمعتاد. تأجل تخصيص المورد، وتأجل معه جزء من ذاكرة البروتوكول.
يمكن الجمع بين الأسلوبين. يستخدم الخادم مخبأ SYN ما دامت السعة متاحة، ثم ينتقل إلى Cookie عند امتلائه. يحافظ الأسلوب الهجين على تفاوض أغنى في الظروف العادية ويحتفظ بالإيصال عديم الحالة لوقت الضغط. يستطيع جدار ناري أو وكيل أن يتوسط المصافحة أيضاً، لكنه ينقل عبء الحالة وقد يغير دلالة الاتصال من طرف إلى طرف. قرار المورد لا يختفي؛ بل ينتقل إلى مالك آخر.
نُشر RFC 4987 في أغسطس 2007 بوصفه وثيقة Informational، وليس إلزاماً ضمن Standards Track. اعتبر تحليله آنذاك مخبأ SYN وSYN Cookie تعديلين عمليين عند الطرف النهائي، ورأى المخبأ خياراً عادياً أفضل حيث أمكن. هذا حكم تاريخي، وليس دليلاً على الإعداد الافتراضي الحالي لأي نظام تشغيل.
القاعدة الباقية أوسع: لا تنفذ التزاماً مكلفاً ونادراً يستطيع الخصم توجيهه عند أول رسالة غير متحقق منها، ما دام تمثيل أرخص وقابل للعكس يستطيع مواصلة التبادل. انتظار عودة معلومة من الرد يقدم دليلاً أفضل على إمكانية الوصول في مسار العودة. لكنه لا يصادق هوية الطرف، وقد يفقد سياقاً مفيداً. الدفاع الصريح يبين المورد الذي وفره والدلالة التي أضعفها معاً.
المصدر الوحيد هو RFC 4987، «TCP SYN Flooding Attacks and Common Mitigations». يلتزم هذا المقال بحدود حالة TCP عند الطرف، والدفاعات التي حللتها الوثيقة، ومقايضاتها المعلنة؛ ولا يستنتج إعدادات حالية أو نسب نشر أو وتيرة هجمات.
إحاطة الأعضاء
سياق أعمق للملف الشخصي
سجّل الدخول بمستوى العضوية المناسب لفتح الإحاطة الكاملة وملاحظات المصادر.
للدائرة الاستراتيجية فقط
الدائرة الاستراتيجية
مفتوح لجميع القراء. افتح إحاطات الملف الشخصي بعد الانضمام وتسجيل الدخول.
انضم إلى الدائرة الاستراتيجيةلأعضاء تحالف القيادات فقط
تحالف القيادات
لأصحاب الأصول الفكرية المؤهلين وللإدارة؛ سجّل الدخول للوصول إلى إحاطات التحالف.
انضم إلى تحالف القيادات
