التيار التقني

الرئيسية » الأمن السيبراني » ملف XML-RPC وتأثيره على أمان مواقع ووردبريس

ملف XML-RPC وتأثيره على أمان مواقع ووردبريس

ملف XML-RPC وتأثيره على أمان مواقع ووردبريس

تم تطوير ملف XML-RPC لتسهيل التواصل مع أنواع مختلفة من أجهزة الكمبيوتر وكذلك أنظمة تشغيل مختلفة ، للتواصل مع بعضها البعض عبر الويب  كما  يسمح للمطورين بإنشاء برامج يمكنها التفاعل مع البرامج الأخرى مثل النشر عبر منصات التواصل الاجتماعية و النشرة البريدية وموجز RSS ، و بدونه سيكون WordPress في صومعته الخاصة ومنفصلًا عن بقية الإنترنت.

ما هو ملف Xmlrpc.php 

XML-RPC هي إحدى ميزات WordPress التي تتيح نقل البيانات ، حيث يعمل HTTP كآلية نقل و XML كآلية تشفير ، ونظراََ لأن ووردبريس ليس نظامًا مغلقًا ذاتيًا ويحتاج أحيانًا إلى التواصل مع أنظمة أخرى ، فقد تم تطوير هذه الوظيفة للاتصال بالتطبيقات الأخرى.

على سبيل المثال ، لنفترض أنك أردت النشر على موقعك من جهازك الجوّال لأن جهاز الكمبيوتر لم يكن في مكان قريب منك  يمكنك استخدام ميزة الوصول عن بُعد التي تم تمكينها بواسطة xmlrpc.php للقيام بذلك.

كانت الميزات الأساسية التي تم تمكين xmlrpc.php من تمكينها تسمح لك بالاتصال بموقعك عبر الهاتف الذكي ، وتنفيذ عمليات التتبع وإعادة الإرسال من مواقع أخرى ، وبعض الوظائف المرتبطة بالمكوِّن الإضافي Jetpack مثل النشر على وسائل التواصل الاجتماعي.

في الإصدارات القديمة من ووردبريس  تم إيقاف تشغيل XML-RPC افتراضيًا ، ولكن منذ الإصدار 3.5 ، يتم تمكينه افتراضيًا بسبب بعض الإضافات الشائعة لـ WordPress مثل Jetpack وكذلك تطبيق WordPress الخاص لكل من Android و iOS يستخدم XML-RPC أيضاََ.

خطورة ملف XML-RPC ولماذا يجب عليك تعطيله في موقعك 

بينما لا يزال ملف xmlrpc.php القديم يأتي مع كل تثبيت لـ WordPress بشكل افتراضي ، يجب عليك تعطيله لأنه يضيف ثغرات أمنية إلى موقعك.

 الآن قد تتساءل إذا كانت REST API قد حلت محل XML-RPC فلماذا لا يزال ووردبريس يحتفظ به ؟ السبب الرئيسي هو التوافق مع الإصدارات السابقة ، وهو أحد ميزات USP الخاصة بـ WordPress.حيث تتيح هذه الميزة لمالكي المواقع غير المستعدين أو غير القادرين على تحديث إصدار WordPress الخاص بهم أن يظلوا قادرين على فعل كل ما يريدون دون أي عوائق.

الأنواع الأكثر شيوعًا للهجمات التي تستغل ملف XML-RPC هي كما يلي :

1- هجمات حجب الخدمة  “DDoS” : التي قد تأتي من خلال  pingbacks ، حيث  يعد Pingback بشكل أساسي أحد تلك التعليقات التي تظهر على منشور عندما ترتبط صفحة ويب أخرى بمنشورك. إذا تم تمكين XML-RPC ، فمن المحتمل أن يقوم المهاجم بشن هجوم DDoS من خلال استغلاله لإرسال عدد كبير من عمليات pingbacks إلى موقعك في فترة زمنية قصيرة ، تقوم واجهة برمجة تطبيقات REST  بجعل عمليات pingback  أكثر أمانًا هذه الأيام.

Pingback :هو تعليق فريد “unique comment” يتم إنشاؤه عند الارتباط بمدونة أخرى إذا كان المدون الآخر أو مؤلف موقع ويب يدعم خاصية pingback ، يتيح لك Pingback تنبيه المؤلف بأنك قمت بربط منشوره على موقعك ، حيث يمكن للمدون الذي تم إشعاره بعد ذلك السماح للرابط الخاص بك بالظهور على موقعه في المقابل، Pingback و trackback هما نفس الشيء ، مع وجود اختلافات فنية بسيطة

2- هجمات القوة الغاشمة أو هجمات “Brute force attacks” :

في كل مرة يقدم xmlrpc.php طلبًا ، فإنه يرسل اسم المستخدم وكلمة المرور للمصادقة ، حيث يمثل هذا مسؤولية أمنية كبيرة وهو أمر لا تفعله REST API ، في الواقع تستخدم واجهة برمجة تطبيقات REST بروتوكول OAuth الذي يرسل الرموز المميزة للمصادقة بدلاً من أسماء المستخدمين وكلمات المرور.

نظرًا لأن xmlrpc.php يرسل معلومات المصادقة مع كل طلب ، يمكن للقراصنة استخدامها لمحاولة الوصول إلى موقعك ، باستخدام شبكات كبيرة من أجهزة الكمبيوتر المعروفة باسم botnets فقد يسمح هجوم القوة الغاشمة  ب : 

  • إبطاء موقعك (أو تسبب في توقفه عن الاستجابة) بسبب طلبات الخادم المتكررة.
  • إدراج محتوى غير مرغوب به 
  • التلاعب بأكواد موقعك  أو  إدراج روابط غير مرغوب فيها.
  • إتلاف قاعدة البيانات الخاصة بك.

إذا أرسل المهاجم طلبات كافية إلى موقعك ، ولكل منها اسم مستخدم وكلمة مرور مختلفان ، فهناك احتمال أن يتمكنوا في النهاية من الوصول إلى الاسم الصحيح ، مما يمنحهم إمكانية الوصول إلى موقعك.

لهذا السبب إذا كنت تقوم بتشغيل إصدار محدث من WordPress والذي يستخدم واجهة برمجة تطبيقات REST للتواصل مع الأنظمة الخارجية ، فيجب عليك تعطيل xmlrpc.php. ليست هناك حاجة لذلك ويمكن أن يجعل موقعك عرضة للخطر.

هناك بعض الإضافات مثل Jetpack تحتاج عند تشغيلها لأن يكون ملف XML-RPC فعالاََ ، لكنها تمتلك أدوات أمنية حديثة تحظر هذه الهجمات تلقائيًا ، وتحمي موقع الووردبرس الخاص بك من الوصول غير المصرح به.

متى يتطلب إبقاء ملف XML-RPC فعالاََ

هناك عدد قليل من السيناريوهات حيث يكون من الأفضل إبقاء XML-RPC ممكّنًا منها :

  • اذا كان لديك موقع ويب قديم لا يمكنك تحديثه إلى الإصدار 4.4 أو أعلى لسبب ما ، لذلك لا يمكنك الوصول إلى REST API.
  • إذا كنت تستخدم برنامجًا لا يمكنه الوصول إلى واجهة برمجة تطبيقات REST للتواصل مع موقعك على الويب.
  • التكامل مع بعض تطبيقات الجهات الخارجية  مثل بعض الإضافات التي يمكنها فقط استخدام XML-RPC

إلى حد ما ، هذه المشكلات ليست صعبة للغاية على مسؤولي الشبكة لمعالجتها ،حيث تحظر العديد من إعدادات جدار الحماية و NAT الطلبات الواردة بالفعل ، مما يسمح فقط بالردود على الطلبات التي تنشأ على الشبكة الداخلية ، و على الرغم من أن هذه الكتلة ستسمح بتدفق المعلومات الصادرة ، إلا أنها ستمنع الأنظمة الخارجية  من تقديم طلبات للأنظمة على الشبكة الخاصة.

 في حالات أخرى مثل الحالات التي يعتبر فيها المنفذ 80 منفذًا “مفتوحًا” ، قد يكون لدى مسؤولي الشبكة الكثير من العمل الإضافي الذي يتعين عليهم القيام به في اكتشاف أفضل السبل (وما إذا كان) للسماح بمعاملات XML-RPC وكيفية حظرها ، اذا لزم الأمر.

كيفية تعطيل ملف xmlrpc.php

هناك ثلاثة طرق لتعطيل ملف xmlrpc : 

1- عن طريق تثبيت أحد إضافات الووردبريس :

 تثبيت إضافة هي أسهل طريقة لتعطيل ملف xmlrpc  هناك بعض الإضافات التي تعمل على ذلك منها : 

2- الطلب من مزود الاستضافة الخاص بك تعطيل ملف xmlrpc.php

3- إضافة بعض الأكواد البرمجية
هناك طريقتان لتعطيلة
1- من خلال ملف function.php :
قم بفتح ملف الوظائف في موقعك الووردبرس أو من خلال لوحة التحكم cpanel وقم بإضافة الكود التالي  : 

add_filter( ‘xmlrpc_enabled’, ‘__return_false’ );

2- تعطيل xmlrpc.php من خلال ملف htaccess : 
قم بإضافة هذا الكود الى ملف  htaccess في موقعك :

<Files xmlrpc.php>
Order Allow,Deny
Deny from all
</Files>

مكتبات بديلة

لاحظ أن مكتبة xmlrpc وتبعياتها لم يتم تحديثها منذ عدة سنوات ، وسيكون الأسلوب الأكثر ملاءمة هو استبدالها بمكتبات أكثر حداثة تعتمد على امتداد xml أو تعمل مع تطبيق XML الخاص بها مثل :

الخاتمة

أثبت XML-RPC أنه بروتوكول مفيد للسماح للتطبيقات والخدمات بالتواصل مع WordPress في الماضي ، ولكن الآن، حلّت واجهة برمجة تطبيقات REST محلها لهذا الغرض ، لكن لا يزال WordPress يحتفظ بملف xmlrpc.php مع كل تثبيت من أجل التوافق مع الإصدارات السابقة ، فلا يوجد سبب لتمكينه بعد الآن لأنه يخلق ثغرات أمنية على موقعك يمكن للمهاجمين استغلالها ، باستثناء بعض السيناريوهات الغير الشائعة. 

لتعطيل XML-RPC في ووردبريس ، يمكنك ببساطة تثبيت وتفعيل المكون الإضافي Disable XML-RPC أو إضافة بعض الأكواد إلى ملف htaccess.

بينما يمنح تعطيل XML-RPC دفعة بسيطة لأمان موقع الويب الخاص بك ، فإنه لا يكفي لدرء البرامج الضارة وهجمات DDoS /  DoS و محاولات القرصنة والطرق الأخرى لتخريب موقعك ، للحصول على حل أمان شامل لموقع ووردبريس الخاص بك عليك تحديث موقعك والمكونات الإضافية إلى أحدث إصدار و أخذ نسخة احتياطية لموقعك باستمرار  بالإضافة إلى تثبيت جدار حماية لموقعك لاكتشاف الهجمات الضارة و صدها .

شارك مقالتنا مع الأصدقاء

Share on whatsapp
Share on facebook
Share on twitter
Share on linkedin
Share on telegram
Share on email
مقالات ذات صلة :

مدونات صديقة

ترفيهات

ترفيهات هي مدونة تقدم لكم مراجعات الألعاب و ملخصات الانمي و كل ما هو جديد في عالم الترفيه والمرح

All In One Video Download

منصة واحده لها القدره على تحميل وتنزيل مقاطع الفيديو من جميع المنصات
التواصل الإجتماعي والمرئي

أحدث المقالات

التصنيفات