XML rpc یک قابلیت وردپرس برای انتقال داده ها به سایت میباشد. این ویژگی با استفاده از کدهای xml و از طریق پروتکل http انتقال داده ها را انجام میدهد.
Xml rpc در واقع یک فایل اجرایی در هاست و سرور سایت وردپرسی شما است که به شما و کاربران دیگر سایت اجازه میدهد تا از طریق دستگاه های دیگری مانند موبایل و نیز به پنل وردپرس وارد شوید.
این فایل برای ایجاد دسترسی به سایت برای تولید محتوا و ویرایش های دیگر ایجاد شده است و به صورت پیش فرض برای سایت های وردپرسی فعال میشود.
وردپرس مدتی این فایل را از سیستم مدیریت محتوای خود حذف کرده بود اما در ورژن های اخیر دوباره این قابلیت به عنوان یک ویژگی پیش فرض به وردپرس اضافه شد.
Xml یا Extensible Markup Language به معنای “زبان نشانه گذاری توسعه پذیر” میباشد.
Xml بر مبنای متن (متن محور) میباشد و به گونه ای طراحی شده است که برای هردوی انسان و ماشین قابل درک باشد.
XML یک زبان عمومی و open source است که از طرف کنسرسیوم جهانی وب در سال 1998 ارائه شد.
کاربرد XML : بر خلاف زبان نشانه گذاری HTML که عموما برای نمایش اطلاعات در وب استفاده میشود، از xml معمولا برای ذخیره سازی و مرتب کردن اطلاعات و داده های تحت وب استفاده میشود.
XML RPC یک قابلیت مفید در دوران اولیه وردپرس بود که دسترسی شما را به سایت وردپرسی خود بسیار آسان تر و سریع تر میکرد.
در گذشته ابزارهای آنلاین و تحت وب به اندازه امروز پیشرفته نبود و نوشتن مطالب و تولید محتوای سایت در اینترنت میتوانست بسیار کند، دشوار و هزینه بر باشد.
همچنین دسترسی به اینترنت و سیستم های کامپیوتری مانند امروز وسیع و گشترده نبود و همه در هرجا به اینترنت دسترسی نداشتند.
به همین دلیل هم در وردپرس امکانی برای دسترسی به سایت از طریق دستگاه های مختلف ایجاد شده تا از طریق آنها بتوانیم اطلاعات لازم را در هر زمان به سایت انتقال دهیم.
ما حتی نرم افزارها ، فایل ها و اطلاعات هاست سایت را نیز با استفاده از xml rpc میتوانیم به وردپرس منتقل کنیم.
با وجود این که وردپرس این ویژگی را به طور پیش فرض برای فعال کرده و آن را برای کاربران سایت های وردپرسی لازم دانسته است، این قابلیت میتواند امنیت سایت وردپرس شما را به خطر بیاندازد.
علت این موضوع ساده است! شما هیچ چیزی بیشتر از نام کاربری و رمز عبور برای ورود به سایت از طریق xml-rpc نیاز ندارید.
در این حالت کد ریکپچا ، ورود دو مرحله ای یا … هیچکدام برای ورود کاربران مختلف به سایت با ip ها یا دستگاه های مختلف نیاز نیست.
به این ترتیب اینگونه سایت های وردپرسی هدف ساده ای برای هکرها هستند.
حملات اینترنتی با استفاده از هزاران آی پی به سایت های دارای این قابلیت همواره اتفاق می افتد و از طریق این فایل ها میتوانند به درون سایت شما و کدهای آن نفوذ کنند.
حملات brute force و یا ارسال pingback های متعدد در حملات DDOS نمونه هایی از این تهدیدها میباشند. (مقاله جلوگیری از حمله DDOS در وردپرس را مطالعه کنید.)
اما نگران نباشید این قابلیت را میتوانیم هر زمان که بخواهیم غیر فعال کنیم و یا دسترسی کاربران و بات ها را به این فایل ببندیم.
برای اینکه متوجه شوید بهترین و ساده ترین راه برای غیر فعال کردن xml-rpc در وردپرس چیست ادامه مطلب را مطالعه کنید.
راه های زیادی برای غیر فعال سازی xml rpc در وردپرس وجود دارد.
برخی از آنها ساده تر و برخی نیاز به کمی دانش فنی و البته دسترسی به هاست سایت دارند.
در اینجا تمامی راه های ممکن را به ترتیب اولویت و کارایی آنها برایتان آورده ایم:
با ما همراه باشید…
این روش بهترین روش برای این کار است چرا که به جای پاک کردن فایل 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 کنید.
برای این کار کافی است به قسمت public html در هاست خود مراجعه کنید و از آنجا به پوشه wp-content و سپس themes بروید.
در این قسمت میتوانید فایل functions.php قالب سایت را پیدا کرده و ویرایش کنید.
فقط کافی است کد کوتاه زیر را در انتهای فایل functions.php اضافه کنید:
add_filter('xmlrpc_enabled', '__return_false');
این کار دسترسی همه کاربران به فایل xmlrpc را مسدود میکند.
برای غیر فعال سازی این فایل در وردپرس افزونه های زیادی ایجاد و منتشر شده اند که با استفاده از آنها می توانیم امنیت سایت خود را ارتقا دهیم.
معروف ترین و مهمترین پلاگین های وردپرس برای غیر فعال کردن xml-rpc.php در سایت را در ادامه مشاهده میکنید:
برای دانلود، نصب و فعال سازی هر کدام از این افزونه ها میتوانید به سایت اصلی آنها یا مخزن وردپرس مراجعه نمایید.
این مطلب چقدر برای شما مفید بود؟
امتیاز 5 / 5. تعداد نظرات : 2
اولین نظر را شما ثبت کنید!
1 دیدگاه
خیلی مفید بود ممنونم