استفاده از گواهی ssl
گواهی SSL رایگان Let’s Encrypt
آوریل 26, 2021
روش ارسال پوش نوتیفیکشن در وردپرس
روش ارسال پوش نوتیفیکیشن و هشدار در وردپرس
می 12, 2021
امنیت وردپرس

آموزش نحوه غیرفعال کردن xml-rpc در وردپرس

 

غیرفعال کردن xml-rpc در وردپرس

Xmlrpc.php چیست؟

XML rpc یک قابلیت وردپرس برای انتقال داده ها به سایت میباشد. این ویژگی با استفاده از کدهای xml و از طریق پروتکل http انتقال داده ها را انجام میدهد.

Xml rpc در واقع یک فایل اجرایی در هاست و سرور سایت وردپرسی شما است که به شما و کاربران دیگر سایت اجازه میدهد تا از طریق دستگاه های دیگری مانند موبایل و نیز به پنل وردپرس وارد شوید.

این فایل برای ایجاد دسترسی به سایت برای تولید محتوا و ویرایش های دیگر ایجاد شده است و به صورت پیش فرض برای سایت های وردپرسی فعال میشود.

وردپرس مدتی این فایل را از سیستم مدیریت محتوای خود حذف کرده بود اما در ورژن های اخیر دوباره این قابلیت به عنوان یک ویژگی پیش فرض به وردپرس اضافه شد.

 

Xml چیست؟

Xml یا Extensible Markup Language به معنای “زبان نشانه گذاری توسعه پذیر” میباشد.

Xml بر مبنای متن (متن محور) میباشد و به گونه ای طراحی شده است که برای هردوی انسان و ماشین قابل درک باشد.

XML یک زبان عمومی و open source است که از طرف کنسرسیوم جهانی وب در سال 1998 ارائه شد.

کاربرد XML : بر خلاف زبان نشانه گذاری HTML که عموما برای نمایش اطلاعات در وب استفاده میشود، از xml معمولا برای ذخیره سازی و مرتب کردن اطلاعات و داده های تحت وب استفاده میشود.

 

xml rpc چه فایده ای دارد؟

XML RPC یک قابلیت مفید در دوران اولیه وردپرس بود که دسترسی شما را به سایت وردپرسی خود بسیار آسان تر و سریع تر میکرد.

در گذشته ابزارهای آنلاین و تحت وب به اندازه امروز پیشرفته نبود و نوشتن مطالب و تولید محتوای سایت در اینترنت میتوانست بسیار کند، دشوار و هزینه بر باشد.

مطلب مرتبط  آیا می‌توان SSL یا یک وب سایت HTTPS را هک کرد؟

همچنین دسترسی به اینترنت و سیستم های کامپیوتری مانند امروز وسیع و گشترده نبود و همه در هرجا به اینترنت دسترسی نداشتند.

به همین دلیل هم در وردپرس امکانی برای دسترسی به سایت از طریق دستگاه های مختلف ایجاد شده تا از طریق آنها بتوانیم اطلاعات لازم را در هر زمان به سایت انتقال دهیم.

ما حتی نرم افزارها ، فایل ها  و اطلاعات هاست سایت را نیز با استفاده از xml rpc میتوانیم به وردپرس منتقل کنیم.

XMLRPC

 

چرا باید xml rpc را غیر فعال کنیم؟

با وجود این که وردپرس این ویژگی را به طور پیش فرض برای فعال کرده و آن را برای کاربران سایت های وردپرسی لازم دانسته است، این قابلیت میتواند امنیت سایت وردپرس شما را به خطر بیاندازد.

علت این موضوع ساده است! شما هیچ چیزی بیشتر از نام کاربری و رمز عبور برای ورود به سایت از طریق xml-rpc نیاز ندارید.

در این حالت کد ریکپچا ، ورود دو مرحله ای یا … هیچکدام برای ورود کاربران مختلف به سایت با ip ها یا دستگاه های مختلف نیاز نیست.

 

افزایش امنیت سایت با غیر فعال کردن فایل Xmlrpc.php

به این ترتیب اینگونه سایت های وردپرسی هدف ساده ای برای هکرها هستند.

حملات اینترنتی با استفاده از هزاران آی پی به سایت های دارای این قابلیت همواره اتفاق می افتد و از طریق این فایل ها میتوانند به درون سایت شما و کدهای آن نفوذ کنند.

 حملات brute force و یا ارسال pingback های متعدد در حملات DDOS نمونه هایی از این تهدیدها میباشند. (مقاله جلوگیری از حمله DDOS در وردپرس را مطالعه کنید.)

اما نگران نباشید این قابلیت را میتوانیم هر زمان که بخواهیم غیر فعال کنیم و یا دسترسی کاربران و بات ها را به این فایل ببندیم.

برای اینکه متوجه شوید بهترین و ساده ترین راه برای غیر فعال کردن xml-rpc در وردپرس چیست ادامه مطلب را مطالعه کنید.

مطلب مرتبط  آموزش نحوه حذف اکانت توسط کاربران در سایت های وردپرسی

xmlrpc وردپرس

 

بهترین روش غیر فعال کردن xml rpc

راه های زیادی برای غیر فعال سازی xml rpc در وردپرس وجود دارد.

برخی از آنها ساده تر  و برخی نیاز به کمی دانش فنی و البته دسترسی به هاست سایت دارند.

در اینجا تمامی راه های ممکن را به ترتیب اولویت و کارایی آنها برایتان آورده ایم:

با ما همراه باشید…

 

1 – ویرایش فایل htaccess برای محدود کردن دسترسی به سایت

این روش بهترین روش برای این کار است چرا که به جای پاک کردن فایل xmlrpc.php، دسترسی به آن را برای همه و یا افراد ناشناس مسدود میکنید.

با این کار کاربرانی که قصد ارسال اطلاعات به سایت با استفاده از این فایل را دارند نمیتوانند به سایت شما وارد شوند.

پس مشکل حل میشود.

برای این کار کافی است فایل htaccess.  را در هاست سی پنل یا دایرکت ادمین خود پیدا کنید و قطعه کد زیر را در انتهای آن کپی کنید:

# Prevent Access to xmlrpc.php File
<Files xmlrpc.php>
order deny,allow
deny from all
allow from 123.123.123.123
</Files>

نکته1: به جای 123.123.123.123 در کد بالا هر IP آدرسی که میخواهید به این فایل دسترسی داشته باشد را وارد کنید. (مثلا آی پی خودتان)

اگر هم نمیخواهید این کار را بکنید، ”  allow from 123.123.123.123 ” را کامل حذف کنید.

نکته2: در صورتی که فایل htaccess. را در هاست خود پیدا نکردید یا این فایل hidden است و یا وجود ندارد .

برای مطمئن شدن از عدم وجود این فایل گزینه show hidden files را انتخاب کنید.

در صورتی که باز هم این فایل را پیدا نکردید با استفاده از گزینه new file  create فایل htaccess. را ایجاد کنید و کد بالا را درون آن جاگذاری کنید.

مطلب مرتبط  آموزش اضافه کردن دکمه بارگذاری پست های بیشتر به وردپرس

نکته3: حتما پس از انجام تغییرات فایل را save کنید.

 

2 – ویرایش فایل php در قالب سایت

برای این کار کافی است به قسمت public html در هاست خود مراجعه کنید و از آنجا به پوشه wp-content و سپس themes بروید.

در این قسمت میتوانید فایل functions.php قالب سایت را پیدا کرده و ویرایش کنید.

فقط کافی است کد کوتاه زیر را در انتهای فایل functions.php اضافه کنید:

add_filter('xmlrpc_enabled', '__return_false');

این کار دسترسی همه کاربران به فایل xmlrpc را مسدود میکند.

 

3 – غیر فعال کردن xml rpc با افزونه

برای غیر فعال سازی این فایل در وردپرس افزونه های زیادی ایجاد و منتشر شده اند که با استفاده از آنها می توانیم امنیت سایت خود را ارتقا دهیم.

معروف ترین و مهمترین پلاگین های وردپرس برای غیر فعال کردن xml-rpc.php در سایت را در ادامه مشاهده میکنید:

  • Disable XML-RPC plugin
  • iThemes Security plugin
  • NinjaFirewall plugin
  • XML-RPC Pinkback plugin
  • و…

برای دانلود، نصب و فعال سازی هر کدام از این افزونه ها میتوانید به سایت اصلی آنها یا مخزن وردپرس مراجعه نمایید.

تبلیغ در گوگل برتینا

این مطلب چقدر برای شما مفید بود؟

امتیاز 5 / 5. تعداد نظرات : 2

اولین نظر را شما ثبت کنید!

1 دیدگاه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *