Xmlrpc.php در وردپرس چیست و چرا باید آن را غیرفعال کنید

Xmlrpc.php چیست؟

Xmlrpc.php چیست؟ – وردپرس همیشه دارای ویژگی های خاصی بوده که به شما امکان می دهد از راه دور با سایت خود تعامل و ارتباط داشته باشید.گاهی اوقات لازم است که از هر مکانی به وب سایت خود دسترسی داشته باشید. برای مدت زمان طولانی ، راه حل فایلی به نام xmlrpc.php بود. اما در سالهای اخیر ، این فایل بیشتر به یک باگ و مشکل تبدیل شده است تا یک راه حل.

در این مقاله قصد داریم به بررسی بیشتر این فایل بپردازیم.

Xmlrpc.php چیست؟

XML-RPC یک ویژگی وردپرس است که امکان انتقال داده ها را فراهم می کند ، با پروتکل HTTP به عنوان مکانیزم حمل و نقل و XML به عنوان مکانیزم رمزگذاری عمل می کند. از آنجایی که وردپرس یک سیستم انحصاری نیست و گاهی نیاز به برقراری ارتباط با سایر سیستم ها نیز دارد ، این ویژگی پیاده سازی شد.

به عنوان مثال اگر کامپیوتر شما در دسترس نبود و قصد داشتید از طریق دستگاه تلفن همراه خود به سایت مطلبی ارسال کنید. فقط می توانید از ویژگی دسترسی از راه دور که توسط xmlrpc.php فعال شده استفاده کنید.

 

چرا Xmlrpc.php ساخته شد و چگونه مورد استفاده قرار گرفت؟

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

راه حل ( آن زمان) ایجاد کاربر وبلاگ نویس بصورت آفلاین بود ، کاربران می توانستند محتوای خود را تهیه کنند ، سپس برای انتشار آن به وبلاگ متصل شوند. این ارتباط از طریق XML-RPC انجام شد.

XML-RPC امروز

در سال 2008 ، با نسخه 2.6 وردپرس ، گزینه ای برای فعال یا غیرفعال کردن XML-RPC وجود داشت. با انتشار برنامه آیفون وردپرس ، پشتیبانی XML-RPC بصورت پیش فرض فعال شده است و گزینه ای برای خاموش کردن تنظیم وجود ندارد.

با این حال ، عملکرد این فایل با گذشت زمان بسیار کاهش و اندازه کلی فایل از 83kb به 3kb کاهش یافته است.

آینده XML-RPC

با API جدید وردپرس ، می توان انتظار داشت که XML-RPC کاملاً از بین برود. امروز ، این API جدید هنوز در مرحله آزمایشی است و فقط با استفاده از یک افزونه می توان آن را فعال کرد.API جدید کامل نیست ، اما راه حلی قوی تر و مطمئن تر برای مسئله ای که xmlrpc.php به آن پرداخته است ، ارائه می دهد.

 

چرا باید Xmlrpc.php را غیرفعال کنید

بزرگترین مسائل مربوط به XML-RPC نگرانی های امنیتی است که بوجود می آید. این مشکلات به طور مستقیم مربوط به XML-RPC نیست ، بلکه در چگونگی استفاده از این فایل برای حمله به سایت می باشد.

مطمئناً می توانید با رمزهای عبور فوق العاده قوی و افزونه های امنیتی از وردپرس و سایت خود محافظت کنید. اما بهترین حالت محافظت غیرفعال کردن این فایل است.

در XML-RPC دو ضعف اصلی وجود دارد که مورد سوء استفاده قرار گرفته است.

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

مورد دوم ، حملات DDoS به صورت آفلاین می باشد هکرها از ویژگی pingback در وردپرس استفاده می کنند تا بلافاصله هزاران سایت را به پینگ بک ارسال کنند. این ویژگی در xmlrpc.php به هکرها امکان در اختیار داشتن تقریباً بی پایان آدرسهای IP را می دهد تا حمله DDoS را از طریق آن توزیع کنند.

برای بررسی اینکه XML-RPC در سایت شما در حال اجرا است ، می توانید آن را از طریق ابزاری به نام XML-RPC Validator بررسی کنید.

 

دو روش برای غیرفعالسازی این فایل وجود دارد :

روش اول: غیرفعال کردن Xmlrpc.php با افزونه

به سادگی به مسیر : افزونه ها » افزودن مراجعه کنید. عبارت “Disable XML-RPC” را جستجو کنید و افزونه مورد نظر را که در تصویر زیر مشخص شده است را نصب و فعال کنید :

 

 

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

 

روش 2: غیرفعال کردن فایل Xmlrpc.php بصورت دستی

اگر قصد استفاده از افزونه را ندارید و ترجیح می دهید آن را به صورت دستی غیرفعال کنید ، این روش را دنبال کنید.

وارد هاست خود شوید، فایل .htaccess خود را ویرایش کنید.سپس کد زیر را به این فایل اضافه کنید :

 


# Block WordPress xmlrpc.php requests
<Files xmlrpc.php>
order deny,allow
deny from all
</Files>

 

 

بیشتر بخوانید : ۷ روش برای حفظ امنیت وب سایت و جلوگیری از حمله هکرها

 

دیدگاه کاربران
  • وحید ۵ فروردین ۱۳۹۹

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

ارسال دیدگاه

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

کد امنیتی Time limit is exhausted. Please reload CAPTCHA.