ESC را فشار دهید تا بسته شود

غیرفعال کردن xmlrpc برای افزایش امنیت در وردپرس

وردپرس به‌عنوان یکی از محبوب‌ترین سیستم‌های مدیریت محتوا (CMS) در جهان، امکانات متعددی را برای کاربران فراهم کرده است. یکی از این امکانات XML-RPC است که برای برقراری ارتباط از راه دور با وردپرس استفاده می‌شود. اما با وجود کاربردهایی که دارد، یک درگاه امنیتی بسیار خطرناک محسوب می‌شود. از همین رو، غیرفعال کردن xmlrpc یا (Disable XMLRPC) یکی از مهم‌ترین اقداماتی است که هر مدیر وب‌سایت باید برای جلوگیری از حملات هکری و حفظ امنیت سایت انجام دهد. در این مقاله، ابتدا بررسی می‌کنیم که XML-RPC چیست، چه خطراتی دارد و سپس چندین روش مختلف برای غیرفعال کردن xmlrpc برای امنیت وردپرس را معرفی می‌کنیم. 

XML-RPC چیست و چگونه کار می‌کند؟ 

XML-RPC یک پروتکل ارتباطی است که از طریق فرمت XML و پروتکل HTTP داده‌ها را بین سیستم‌های مختلف رد و بدل می‌کند. این ویژگی به کاربران امکان می‌دهد که از نرم‌افزارها یا دستگاه‌های دیگر (مانند موبایل) به سایت وردپرسی خود متصل شده و بدون ورود مستقیم به داشبورد وردپرس، تغییرات مورد نظر خود را اعمال کنند. 

به‌عنوان‌مثال، اگر از نرم‌افزارهای مدیریت محتوا مانند WordPress App در موبایل یا Microsoft Word برای انتشار مستقیم محتوا در وردپرس استفاده می‌کنید، این برنامه‌ها از XML-RPC برای اتصال به سایت شما استفاده می‌کنند. 

XML-RPC چیست و چگونه کار می‌کند؟ 

چرا XML-RPC در وردپرس فعال شده است؟ 

در نسخه‌های قدیمی وردپرس، این ویژگی به‌صورت پیش‌فرض غیرفعال بود و برای استفاده باید به‌صورت دستی فعال می‌شد. اما از نسخه 3.5 به بعد، وردپرس تصمیم گرفت XML-RPC را به‌طور پیش‌فرض فعال کند تا ارتباط از راه دور و دسترسی به API وردپرس آسان‌تر شود. 

اما در کنار این راحتی، خطرات امنیتی بزرگی نیز وجود دارد که باعث می‌شود  غیرفعال کردن xmlrpc به یک ضرورت تبدیل شود. 

به چه دلیل باید XML-RPC را غیرفعال کنیم؟ 

در ادامه دلایل غیرفعال کردن XML-RPCرا بررسی می‌کنیم:

خطر حملات Brute Force (حدس زدن رمز عبور) 

یکی از مهم‌ترین تهدیدات مرتبط با XML-RPC، حملات Brute Force است. در این نوع حملات، هکرها سعی می‌کنند با ارسال تعداد زیادی درخواست، نام کاربری و رمز عبور صحیح را حدس بزنند. 

در روش ورود عادی وردپرس، اگر چندین بار رمز عبور اشتباه وارد شود، سیستم کاربر را بلاک می‌کند. اما XML-RPC این محدودیت را ندارد، در نتیجه، هکرها می‌توانند هزاران ترکیب از نام کاربری و رمز عبور را از طریق فایل xmlrpc.php به سایت ارسال کنند و در نهایت وارد پیشخوان وردپرس شوند. 

حملات DDoS و افزایش بار سرور 

هکرها می‌توانند از XML-RPC برای اجرای حملات DDoS استفاده کنند. در این روش، مهاجمان با ارسال درخواست‌های مکرر و متعدد به فایل xmlrpc.php، باعث افزایش مصرف منابع سرور و کند شدن یا حتی از دسترس خارج شدن سایت می‌شوند. 

امکان اجرای حملات Pingback و سوءاستفاده از سایت شما 

یکی دیگر از مشکلات امنیتی XML-RPC این است که می‌توان از آن برای اجرای حملات Pingback استفاده کرد. 

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

روش‌های غیرفعال کردن xmlrpc در وردپرس 

روش‌های غیرفعال کردن xmlrpc برای امنیت وردپرس شامل موارد زیر است:

غیرفعال کردن xmlrpc از طریق فایل .htaccess 

یکی از ساده‌ترین روش‌ها برای غیرفعال کردن XML-RPC، مسدود کردن دسترسی به فایل xmlrpc.php از طریق ویرایش فایل .htaccess است. برای انجام این کار: 

  • وارد هاست (CPanel یا DirectAdmin) شوید. 
  • در File Manager، به مسیر /public_html بروید. 
  • فایل .htaccess را ویرایش کرده و کد زیر را به آن اضافه کنید:
apache

# Block WordPress xmlrpc.php requests

<Files xmlrpc.php>

order deny,allow

deny from all

</Files>
  • تغییرات را ذخیره کنید. 

پس از انجام این مراحل، XML-RPC در سایت شما کاملاً غیرفعال خواهد شد. 

غیرفعال کردن xmlrpc از طریق فایل .htaccess 

غیرفعال کردن xmlrpc با استفاده از افزونه وردپرس 

اگر با ویرایش فایل‌های وردپرس راحت نیستید، می‌توانید از افزونه‌های وردپرس برای غیرفعال کردن xmlrpc استفاده کنید. برخی از بهترین افزونه‌ها برای این کار عبارت‌اند از: 

🔹 Disable XML-RPC 

🔹 Disable XML-RPC Pingback 

  • وارد پیشخوان وردپرس شوید. 
  • به بخش افزونه‌ها < افزودن بروید. 
  • یکی از این افزونه‌ها را جستجو کرده، نصب و فعال کنید. 

پس از فعال‌سازی، XML-RPC به‌طور خودکار غیرفعال خواهد شد. 

غیرفعال کردن xmlrpc با استفاده از افزونه وردپرس 

غیرفعال کردن xmlrpc با کد در فایل functions.php 

برای غیرفعال کردن xmlrpc می‌توانید یک قطعه کد ساده را در فایل functions.php قالب وردپرس قرار دهید: 

add_filter('xmlrpc_enabled', '__return_false');

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

غیرفعال کردن xmlrpc از طریق فایروال سرور 

اگر به تنظیمات فایروال دسترسی دارید، می‌توانید با بلاک کردن درخواست‌های مربوط به xmlrpc.php، XML-RPC را غیرفعال کنید. 

در فایروال CSF یا Cloudflare، می‌توانید قوانینی تنظیم کنید تا تمام درخواست‌های ورودی به xmlrpc.php مسدود شوند. 

در آخر

غیرفعال کردن xmlrpc یکی از اقداماتی است که می‌تواند امنیت وب‌سایت وردپرسی شما را به میزان قابل توجهی افزایش دهد و از حملات Brute Force، DDoS و سوءاستفاده‌های امنیتی جلوگیری کند. باتوجه‌به اینکه این قابلیت به‌صورت پیش‌فرض فعال است و می‌تواند درگاه ورود هکرها باشد، توصیه می‌شود در سریع‌ترین زمان ممکن یکی از روش‌های مطرح‌شده مانند ویرایش فایل .htaccess، استفاده از افزونه‌های امنیتی یا تغییرات در فایل functions.php را اجرا کنید. با این کار، نه‌تنها از اطلاعات و منابع سایت خود محافظت می‌کنید، بلکه تجربه‌ای امن‌تر و پایدارتر برای کاربران خود فراهم خواهید کرد.

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

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