سجلات DDOS: التعامل مع هجوم XMLRPC لروبوتات WordPress
نشرت: 2019-04-08قبل يومين واجهنا صعوبات مع أحد مواقع عملائنا على شبكة الإنترنت باسم Nettsted Limited. نحن لا نقدم عادة الدعم الفني لعملائنا ولكن للأسف لا تقدم خدمة الاستضافة لعملائنا أي دعم. نظرًا لأننا شعرنا بالمسؤولية لمساعدتها ، قررنا اتخاذ إجراءات ضد هجمات Botnet . واجهنا سلوكيات غريبة من الروبوتات أثناء الهجوم. سأذكر ما حدث ساعة بساعة في هذه الصفحة والإجراءات التي قمنا بها لحماية موقع الويب الخاص بعميلنا.
بداية هجوم DDOS: المهاجم يعرّف نفسه
بصفتي مالكًا لشركة Nettsted Limited ، فأنا أعمل من 16 إلى 18 ساعة في اليوم لتقديم الدعم لعملائنا. لدينا عملاء مختلفون من جميع أنحاء العالم ، لذلك أحتاج إلى أن أكون مستيقظًا في مناطق زمنية مختلفة. بعد شهور ، أردت أولاً مشاهدة فيلم وأستمتع مع عائلتي. لسوء الحظ ، كان هذا أحد أسوأ أيام حياتي المهنية. بعد الفيلم ، قررنا أخذ قسط من الراحة. ولكن مجرد شيء غير مرئي سخرني وقال لي "مرحباً! عليك أن تلقي نظرة على أعمالك ثم تنام ". ونعم ... هذا ما حدث في غيابي لمدة 5 ساعات في العمل:
- قام أحد عملائي بإزالة المكون الإضافي لتحسين محركات البحث ، وحذف جميع الأوصاف والعناوين الخاصة بالموقع. قام أيضًا بكسر بنية الارتباط الخاصة بالموقع.
- قام العميل الآخر بإزالة بعض المكونات الإضافية التي قمنا بتثبيتها والتي تتعلق بـ SEO. تم تغيير إعدادات ذاكرات التخزين المؤقت وبطريقة ما تعطلت جميع ملفات .js و .css.
- كان أحد موكلي يتعرض لهجوم DDOS وكانت تراقب فقط كيف ينهار موقعها على الإنترنت.
عندما انضممت إلى WhatsApp و Skype ، رأيت الكثير من الشكاوى لمدة 5 ساعات. 30٪ من الجمل كانت فقط "أين أنت ؟!".
أخبرني موكلي أنه تلقى رسالة عبر WhatsApp. عرّف المهاجم نفسه برقم الهاتف وأخبر موكلي أنه سيهاجمها. هذا يبدو حقًا غبيًا لكنه فعل ذلك حقًا ... عندما عدت إلى العمل ، كان الهجوم قد بدأ بالفعل.
اليوم الأول - اتخاذ الإجراء الأول ضد الهجمات
هذه بعض السجلات من الهجوم الذي حصلنا عليه:
103.9.156.249 - - [07/Apr/2019:01:19:02 +0100] "GET / HTTP/1.0" 200 73651 "-" "WordPress/4.1.1; ; verifying pingback from 93.174.93.163"
199.223.214.148 - - [07/Apr/2019:01:19:03 +0100] "GET / HTTP/1.0" 200 13194 "-" "WordPress/3.3.1; http://www.mentalic.gr"
216.240.176.141 - - [07/Apr/2019:01:19:02 +0100] "GET / HTTP/1.0" 200 73651 "-" "WordPress/4.0;
104.236.33.158 - - [07/Apr/2019:01:19:02 +0100] "GET / HTTP/1.0" 200 73651 "-" "WordPress/4.1.1; http://pmsearchpartners.com; verifying pingback from 93.174.93.163"
149.210.236.96 - - [07/Apr/2019:01:19:02 +0100] "GET / HTTP/1.0" 200 73651 "-" "WordPress/3.9.27; http://imageconsultant.mu/; verifying pingback from 149.210.236.96"
185.87.249.33 - - [07/Apr/2019:01:19:02 +0100] "GET / HTTP/1.0" 200 73651 "-" "WordPress/4.1;
158.69.26.84 - - [07/Apr/2019:01:19:02 +0100] "GET / HTTP/1.0" 200 73651 "-" "WordPress/3.9.2; http://teensystudios.com; verifying pingback from 93.174.93.163"
103.233.76.243 - - [07/Apr/2019:01:19:02 +0100] "GET / HTTP/1.0" 200 73651 "-" "WordPress/4.1.26; http://help.worldmart.in; verifying pingback from 93.174.93.163"
203.175.180.254 - - [07/Apr/2019:01:19:02 +0100] "GET / HTTP/1.0" 200 73651 "-" "WordPress/4.1.1; http://www.cybertechriskcenter.com; verifying pingback from 93.174.93.163"
199.223.214.148 - - [07/Apr/2019:01:19:03 +0100] "GET / HTTP/1.0" 200 13194 "-" "WordPress/3.3.1; http://www.mentalic.gr"
68.71.60.249 - - [07/Apr/2019:01:19:02 +0100] "GET / HTTP/1.0" 200 73651 "-" "WordPress/4.1.26; http://www.itunesalternative.org; verifying pingback from 93.174.93.163"
66.55.132.6 - - [07/Apr/2019:01:19:02 +0100] "GET / HTTP/1.0" 200 73651 "-" "WordPress/3.8.16;
163.172.103.45 - - [07/Apr/2019:01:19:02 +0100] "GET / HTTP/1.0" 200 73651 "-"
يمكنك أن ترى في السجلات أن الهجوم جاء من وكلاء مستخدم WordPress. لكن بعض تلك الهجمات كانت تأتي أيضًا بدون عملاء. لقد تحققت من جميع تلك المواقع التي تمت إحالتها وكانت جميعها مواقع ويب قديمة ومهجورة. هناك عنوان IP واحد كان متماثلًا تقريبًا في جميع السجلات وكان هناك عنوانان آخران. 93.174.93.163 كان عنوان IP هولنديًا ، لكنني أعتقد أن الخادم / الاستضافة هي التي كانت تستعد لهجوم الروبوتات علينا. آخرون 2 IPs كانوا أيضا هولندا IP.
نظرًا لوجود الكثير من إشعارات "التحقق من pingback" بشأن الهجمات ، اعتقدت أنه يستخدم pingbacks و xmlrpc.php للهجوم.

كان رد فعلي الأول على الهجمات هو تغيير اسم xmlrpc.php ، ثم إزالته على الإطلاق وإزالة pingbacks من إعدادات WordPress .
النتيجة : لم يبطئ حتى الهجمات.
نظرًا لأنني لم أحصل على أي نتائج جيدة من الحركات الأولى ، فقد قررت إزالة ملف xmlrpc.php الخاص بـ WordPress من الملفات. ومع ذلك ما زال لا يساعد.
ومع ذلك فقد أثبت أنه يساعد في نوع من هجمات DDOS. إذا كنت تواجه ذلك أيضًا ، فيمكنك أيضًا تجربته.
اليوم الأول -) الاستجابة الأولى: استفد من كونك محليًا
الآن ستخبرني لماذا لم أستخدم Cloudflare. كان CF يستغرق وقتًا في الإعداد ويمكن أن تكون تغييرات خادم الأسماء مؤلمة حقًا في بعض الأحيان. لذلك أردت إبطاء الهجمات ولكنني أيضًا قمت بإعداد cloudflare لموقع الويب. تم تغيير خوادم الأسماء. كان الهجوم خطيرًا وألحق أضرارًا جسيمة باستخدام الإدخال / الإخراج ، والنطاق الترددي وما إلى ذلك. أعتقد أنهم كانوا 2-3 أشخاص كانوا يهاجمون من خوادم مختلفة. كان موقع موكلي يكسب 1000 دولار يوميًا وكان يمثل مشكلة خطيرة بالنسبة له. كان الموقع معطلاً حوالي 6 ساعات.
نظرًا لأن الموقع محلي ، فقد قررت إعداد htaccess. كنت أحتاج إلى جميع عناوين IP الخاصة بالدنمارك. بمساعدة أحد مواقع الويب ، تمكنت من العثور على جميع عناوين IP للدنمارك. أود إغلاق الموقع لجميع حركة المرور الأجنبية مؤقتًا. لقد قمت بإنشاء ملف htaccess وحظرت كل حركة المرور الأجنبية إلى موقع الويب .
النتيجة : هذه نتيجة جيدة بشكل مؤقت. جميع الروبوتات الخبيثة تصل إلى 403 صفحة الآن. لكن الأخبار السيئة. كانت روبوتات Google تصل إلى 403 أيضًا. نظرًا لأن حركة مرور bot كانت قادمة من الولايات المتحدة الأمريكية بشكل أساسي ، لم أقم بإجراء أي إعداد لـ USA أو Google bot IPs. نظرًا لأن هذا كان مؤقتًا إلى أن تحدث تغييرات خادم الأسماء ، لم تكن هناك مشكلة.
خلال العملية برمتها كنت أتحدث مع موكلي على الهاتف وأهدئها. كانت غاضبة للغاية ومستاءة بسبب الموقف. أخبرتني أنها تلقت رسائل من المهاجم. كان لديها رقم هاتفه!
اليوم الأول -) تم تغيير خوادم الأسماء والمشاكل المتعلقة بإعدادات Cloudflare
بعد حوالي ساعتين من إعداد htaccess ، تغيرت خوادم الأسماء وقمت بتنشيط cloudflare. تمت إزالة قواعد الرفض / السماح من ملف .htaccess. ومع ذلك ، كانت هناك مشكلة في إعدادات WAF الخاصة بـ Cloudflare. طلبت من عميلي تغيير عنوان IP للخادم وقد فعلت ذلك. في وقت لاحق كنت أقوم بتغيير سجلات DNS الخاصة بـ cloudflare نظرًا لأن معلومات IP القديمة كانت لا تزال موجودة. ومع ذلك ، إذا كنت سأفعل ذلك بعد فترة وجيزة من شراء IP ، فسيتم تعطيل الموقع مرة أخرى. كان "وضع الهجوم" نشطًا بالفعل على موقع الويب.
النتيجة : بعد أن قمنا بتنشيط Cloudflare ، تم إيقاف جميع الهجمات.
بعد 6-7 ساعات من الإثارة وقفت من كرسيي وذهبت إلى النوم. اعتقدنا أننا فزنا لكن الأمر لم ينته بعد.
اليوم الثاني) عاد! تجاوزت إلى Cloudflare مع Botnet!
لقد قمنا بتغيير IP في الصباح ، وبما أنني اعتقدت أن موقع الويب آمن ، فقد غيرت وضع الهجوم إلى الوضع المتوسط. لقد أجريت بعض التغييرات الأخرى على htaccess. لقد اشتريت PRO cloudflare لعميلي. قمت بإعداد بعض إعدادات WAF لجعل موقع الويب أكثر أمانًا. لكن بعد مرور بعض الوقت ، تمكن من العودة بهجمات أكثر خطورة وكان عدد كبير من الهجمات يضرب في الأصل. كان يتخطى Cloudflare.
كانت بعض إعدادات WAF في Cloudflare تعد بإيقاف هجمات WordPress bot ، XMLRPC Attack لكنها لم تكن كذلك . قررت إعداد جميع إعدادات WAF كإعداد افتراضي على Cloudflare.
النتيجة : تبدأ جميع هجمات الروبوت التي ليس لها وكيل مستخدم في الوصول إلى 403.
أعطت النتيجة راحة للموقع لبعض الوقت وكان الخادم يعمل مرة أخرى. ومع ذلك ، كنا نتلقى الكثير من الهجمات وكان قريبًا منها.
اليوم 2-) حظر البلد على Cloudflare
أخيرًا اعتقدت أنه يجب علينا القيام بمزيد من الاستثمار في cloudflare للتخلص من تلك الهجمات. لقد أزلنا ما يقرب من 50٪ من التهديد من خلال تغييراتي الأخيرة. ومع ذلك ، لا يزال هناك 50٪ أخرى. بالنسبة لبلد موقع ويب محلي ، لن يكون الحظر مشكلة. أيضًا نظرًا لأننا قمنا بإصلاح 50٪ من حركة مرور الروبوتات ، فلن تمثل الهجمات من الولايات المتحدة مشكلة خطيرة بالنسبة لنا. اشترينا مؤسسة Cloudflare وحظرنا جميع حركة المرور الأجنبية باستثناء الولايات المتحدة الأمريكية والدنمارك .
النتيجة : أدى هذا إلى إصلاح 90٪ من حركة مرور الروبوتات.
اليوم 3-) الانتقام هو أفضل طبق يقدم باردًا
يمكن لخادمنا التعامل مع 90٪ من حركة مرور الروبوتات. لكنهم لم يوقفوا هجماتهم رغم ذلك. ثم وجدت مكونًا إضافيًا مثيرًا للاهتمام على WordPress. ومع ذلك كان علي اختباره أولاً. وإلا فقد يتعطل موقع الويب وسيؤدي ذلك إلى تدمير الأشياء. طلبت من صديق مبرمج مهاجمة أحد مواقع الويب الخاصة بي. كانت تعمل على أكمل وجه. ثم أقوم بالتحقيق في أمر المهاجم. أنا أفهم من هو ولماذا يهاجمنا.
لقد اتصلت بالمهاجم أولاً. طلبت منه أن يوقف هجماته. لكنه رد علي بالكثير من الإهانات والشتائم. لقد حظرته للتو من WhatsApp ولم أرد عليه. طلب مني موكلي دفع المزيد مقابل هذه الخدمة لكني رفضت. كنت أعتبرها مسألة فخر. طلبت الإذن من موكلي وأزلت الوضع تحت الهجوم. لقد قمت بإعداد البرنامج المساعد.
بدأت في إرسال روبوتاته البغيضة والدموية والخسيسة إلى موقعه على الإنترنت. انهار موقعه الإلكتروني أمام عيني. ما شعرت به كان هو نفسه مع سيرسي الذي كان يشاهد تدمير بيلور في سبتمبر ، ثم أرسلت لهم موقعه الإلكتروني الآخر ثم آخر ثم آخر ... عندما أوقفوا الهجوم ، كان النظام متوقفًا. ومع ذلك ، عندما بدأوا في التعامل مع برامج الروبوت ، كان يتم إعادة توجيههم إلى جميع مواقع الويب الخاصة بهم.