XML-RPC چیست؟
XML-RPC یک پروتکل ارتباطی در وردپرس است که از XML برای انتقال دادهها و از HTTP برای ارتباطات بین سرور و کلاینت استفاده میکند. این پروتکل در گذشته برای فراهم کردن امکان مدیریت از راه دور وردپرس مورد استفاده قرار میگرفت، به ویژه برای کاربرانی که از دستگاههای دیگر مانند موبایل یا نرمافزارهای دسکتاپ برای مدیریت وبسایت استفاده میکردند. فایل xmlrpc.php به عنوان نقطه اصلی این پروتکل عمل میکند و به سیستمهای خارجی اجازه میدهد تا به وردپرس متصل شوند.
با ظهور APIهای مدرنتر مانند REST API، XML-RPC کاربرد کمتری پیدا کرده است و امروزه بیشتر به دلیل نگرانیهای امنیتی شناخته میشود.
---
چرا باید XML-RPC غیرفعال شود؟
1. حملات امنیتی: فایل xmlrpc.php به عنوان یک مسیر نفوذی شناخته میشود که هکرها از آن برای حملات Brute Force یا DDoS استفاده میکنند.
2. ضعفهای امنیتی: وجود این فایل میتواند سایت را در برابر ارسالهای ناخواسته (Pingbacks) یا دسترسی غیرمجاز آسیبپذیر کند.
3. عدم نیاز: اگر نیازی به اتصال از راه دور به سایت ندارید، بهتر است این ویژگی را غیرفعال کنید تا امنیت سایتتان افزایش یابد.
---
روشهای غیرفعال کردن XML-RPC در وردپرس
1. استفاده از افزونهها
افزونههایی مانند Disable XML-RPC یا Stop XML-RPC Attack به راحتی این قابلیت را غیرفعال میکنند. کافی است افزونه را از مخزن وردپرس نصب و فعال کنید.
2. ویرایش فایل functions.php
میتوانید کد زیر را به فایل functions.php قالب خود اضافه کنید:
add_filter('xmlrpc_enabled', '__return_false');
3. استفاده از فایل htaccess.
با افزودن کد زیر به فایل .htaccess در هاست، دسترسی به xmlrpc.php را مسدود کنید:
<Files xmlrpc.php>
Order Deny,Allow
Deny from all
</Files>
4. حذف مستقیم فایل xmlrpc.php
حذف این فایل از سرور، هرچند ممکن است به نظر راهحلی قطعی باشد، اما توصیه نمیشود چون ممکن است باعث مشکلات دیگری در وردپرس شود.
5. محدود کردن دسترسی در سرور
در صورت استفاده از سرور اختصاصی یا مجازی، میتوانید با ویرایش تنظیمات Apache یا NGINX دسترسی به این فایل را محدود کنید.
---
نتیجهگیری
غیرفعال کردن XML-RPC یکی از بهترین راهها برای بهبود امنیت سایت وردپرسی است، مخصوصاً اگر از قابلیتهای آن استفاده نمیکنید. روشهای مختلفی برای انجام این کار وجود دارد، از افزونهها گرفته تا ویرایش فایلهای اصلی وردپرس و هاست. انتخاب روش مناسب به دانش فنی و
سطح دسترسی شما بستگی دارد.