آموزش مقابله با حملات XMLRPC در وردپرس

آموزش مقابله با حملات XMLRPC در وردپرس

وردپرس به دلیل محبوبیتی که در بین سیستم‌های سایت ساز دارد همواره در معرض هک و نفوذ قرار دارد .مهمترین هدف مدیران سایت های وردپرسی تامین امنیت وردپرس هست.یکی از مشکلات امنیتی وردپرس مرتبط با فایل XML-RPC است .برای مدتی بود که پروتکل XML-RPC در وردپرس به دلایل امنیتی غیر فعال بود تا اینکه تیم توسعه‌دهنده وردپرس از نسخه ۳٫۵ به بعد آن را قابل اعتماد دانسته و تصمیم به فعال سازی خودکار آن گرفت و منوی مربوط به فعال سازی آن از پیشخوان وردپرس حذف شد.

مشکل از جایی شروع میشود که فایل xmlrpc.php در وردپرس با ارسال درخواست از طریق post مورد حمله ی دیداس (DDOS – Denial of Service Attak ) قرار میگیرد.در فایل XML-RPC حفره امنیتی موجود نیست اما بسیاری از هکرها با استفاده از این فایل حملات بسیاری روی سایت های وردپرسی ایجاد میکنند و موجب از دسترس خارج شدن سایت ها می شوند .


XML-RPC یا XML Remote Procedure Call

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

XML-RPC وردپرس این امکان را به شما خواهد داد تا با استفاده از نرم‌افزارهایی همچون Windows Live Writer، برنامه اندروید وردپرس یا با استفاده از سرویس‌هایی مثل IFTTT قادر باشید تا به راحتی سایت وردپرسی خود را با دستگاه های موبایلی و غیره مدیریت کنید. اتصال به سایت وردپرس با استفاده از گوشی هوشمند ، pingbacks و trackbacks هنگامیکه دیگر سایت ها به سایت وردپرسی لینک میشوند و افزونه های زیادی مانند افزونه ی محبوب JetPackو اپلیکیشن رسمی وردپرس که برای پلتفرم های اندروید و ios ارائه شده است از این قابلیت استفاده می کنند .

 

مهم ترین ضعف های مرتبط با XML-RPC عبارتند از:

- نقطه ضعف اول حمله Brute force است که هکر می تواند توسط xmlrpc.php و تست کردن تعداد زیادی رمز عبور و نام کاربری در کمترین زمان این چنین حمله ای را ترتیب دهد. این فایل در وردپرس امکان استفاده از یک خط دستور برای حدس زدن صدها رمز عبور را می دهد. که اگر کاربر سایت از رمزهای عبور ساده استفاده کرده باشد، هک شدن سایت حتمی است.
- نقطه ضعف مهم بعد حمله Denial of Service یا رد سرویس با Pingback یکی دیگر از روش های حمله توسط XML-RPC حمله ای با عنوان رد سرویس است. در این نوع حمله تعداد بسیار زیادی درخواست Pingback به سایت ارسال می شود که نرم افزار سایت از پردازش آنها عاجز است. پس سایت با کندی و یا قطع سرویس مواجه می شود.

 

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

 

استفاده از پلاگینDisable XML-RPC
با استفاده از پلاگین Disable XML-RPC می توانید در نسخه های بالاتر از ۳٫۵ وردپرس به راحتی امکان استفاده از این API را غیرفعال نمایید. مزیت استفاده از این افزونه  نسبت به روش های دیگر این است که با آپدیت های قالب وردپرس و یا تعویض قالب نیاز به اعمال تغییرات مجدد نمی باشد.

استفاده از کدنویسی در فایل فانکشن قالب
برای اینکار باید کد زیر را به فایل Function.php قالب سایت خود اضافه کنید. دقت کنید ممکن است با بروزرسانی یا تعویض قالب لازم باشد که این کد را مجددا داخل فایل مذکور قرار دهید.

add_filter('xmlrpc_enabled', '__return_false');

 

جلوگیری از دسترسی به xmlrpc.php توسط فایل htaccess
با استفاده از کدهای فایل htaccess میتوانید دسترسی دیگران به فایل xmlrpc.php را مسدود کنید در حالی که برای ip های خودتان دسترسی را آزاد گذاشته اید. کافی است کد زیر را به انتهای فایل htaccess وردپرس خود اضافه کنید:

<FilesMatch “^(xmlrpc\.php)”>
Order Deny,Allow
Deny from all
Allow from 00.00.00.00
</FilesMatch>


به جای 00.00.00.00 آی‌پی مورد نظر خود را قرار دهید  تا امکان دسترسی به پروتکل XML-RPC برای شما فراهم باشد.
پرونده xmlrpc.php کاملاً در وب سایت شما غیرفعال خواهد شد. این باعث می شود وب سایت شما ایمن شود و تهدیدات امنیتی موجود در وب سایت شما را کاهش دهد.


 اگر از امکان XML-RPC استفاده نمی کنید می توانید به طور کامل خط مربوط به Allow را حذف کنید تا دسترسی همگانی به این فایل بسته شود. همچنین می توانید چند ip مختلف یا حتی چند رنج ip را دسترسی Allow بدهید.

در صورتیکه قصد غیرفعال سازی XML-RPC را ندارید بهترین کار استفاده از یک پلاگین قدرتمند امنیتی همچون Wordfense می باشد. این افزونه به شما این امکان را می دهد تا با تعیین محدودیت هایی برای درخواست های اشتباه به سرور آدرس آیپی شخص مخرب را به سرعت بلاک کنید. این روش به قدری موثر است که با وجود استفاده از پروکسی های مختلف عملا حمله بی اثر می شود.

نوشتن دیدگاه


تصویر امنیتی
تصویر امنیتی جدید

آموزش های مرتبط