از طریق منوی جستجو مطلب مورد نظر خود در وبلاگ را به سرعت پیدا کنید
xmlrpc.php در وردپرس چیست و چرا باید آن را غیرفعال کنید
سرفصلهای مطلب
وردپرس همیشه دارای ویژگی هایی است که به شما امکان می دهد با سایت خود از راه دور تعامل داشته باشید. با آن روبرو شوید، مواقعی وجود خواهد داشت که باید به وب سایت وردپرس خود دسترسی داشته باشید، اما رایانه شما در نزدیکی شما نیست. برای مدت طولانی، راه حل یک فایل به نام xmlrpc.php بود. با این حال، در سال های اخیر، این پرونده بیشتر به یک مزاحمت تبدیل شده است تا یک راه حل.
ما بررسی خواهیم کرد که xmlrpc.php چیست و چرا نوشته شده است. ما همچنین به رایج ترین مشکلات امنیتی که ایجاد می کند و روش رفع آنها می پردازیم روی سایت وردپرس خودتان
Xmlrpc.php چیست؟
XML-RPC یکی از ویژگی های وردپرس است که امکان انتقال داده ها را فراهم می کند، با HTTP به عنوان مکانیزم انتقال و XML به عنوان مکانیزم رمزگذاری عمل می کند. از آنجایی که وردپرس یک سیستم خود محصور نیست و گهگاه نیاز به برقراری ارتباط با سیستمهای دیگر دارد، این امر برای رسیدگی به این کار انجام شد.
به عنوان مثال، فرض کنید میخواستید از دستگاه تلفن همراه خود به سایت خود پست کنید زیرا رایانه شما در نزدیکی نبود. برای انجام این کار می توانید از ویژگی دسترسی از راه دور که توسط xmlrpc.php فعال شده است استفاده کنید.
ویژگیهای اصلی که xmlrpc.php فعال کرده بود به شما امکان میداد از طریق تلفن هوشمند به سایت خود متصل شوید، بکبکها و پینگبکها را از سایتهای دیگر پیادهسازی کنید، و برخی عملکردهای مرتبط با پلاگین Jetpack.
چرا Xmlrpc.php ایجاد شد و چگونه از آن استفاده شد
استفاده از XML-RPC به روزهای اولیه وردپرس برمی گردد، قبل از اینکه وردپرس نامیده شود.
نوشتن و انتشار در اینترنت در روزهای اولیه اینترنت، زمانی که اتصالات به طور باورنکردنی کند بود، بسیار دشوارتر و وقت گیرتر بود. بیشتر مردم به جای نوشتن در مرورگر، به صورت آفلاین می نویسند و سپس محتوای خود را در وب کپی و جایگذاری می کنند. با این حال، این روش بسیار دور از ایده آل بود.
در آن زمان، راه حل این بود که یک کلاینت وبلاگ نویسی آفلاین ایجاد کنید که بتوانید محتوای خود را قبل از اتصال به وبلاگ خود برای انتشار آن بنویسید. این اتصال با استفاده از XML-RPC برقرار شد. برنامههای اولیه از همین اتصال استفاده میکردند تا به افراد اجازه دهند پس از ایجاد چارچوب اولیه XML-RPC، از دستگاههای دیگر وارد سایتهای وردپرس خود شوند.
XML-RPC در ابتدا به طور پیش فرض غیرفعال بود تا اینکه وردپرس 2.6 یک ویژگی را در داشبورد اضافه کرد تا آن را فعال یا غیرفعال کند.
XML-RPC به طور پیش فرض با وردپرس 3.5 و معرفی اپلیکیشن موبایل وردپرس فعال شد. این تغییر همچنین گزینه فعال یا غیرفعال کردن XML-RPC را از داشبورد حذف کرد.
XML-RPC امروزه
در سال 2015، هسته وردپرس یک REST API جدید دریافت کرد. این وردپرس را قادر میسازد تا یک API برای تعامل با برنامههای موبایل و دیگر پلتفرمها داشته باشد.
بسیاری از توسعه دهندگان شروع به استفاده از API جدید کردند که منجر به کاهش قابل توجهی در استفاده از XML-RPC شد. به بیان دیگر، REST API به طور موثر جایگزین XML-RPC شد.XML-RPC هنوز در وردپرس فعال است و xmlrpc.php فایل هنوز در دایرکتوری نرم افزار اصلی قرار دارد.
مطالعه پیشنهادی
درباره REST API و روش شروع استفاده از آن برای توسعه وردپرس بیشتر بیاموزید.
چرا باید Xmlrpc.php را غیرفعال کنید؟
بزرگترین مشکلات XML-RPC نگرانی های امنیتی است که ایجاد می شود. مشکلات مستقیماً مربوط به XML-RPC نیست، بلکه در عوض چگونه می توان از فایل برای فعال کردن یک حمله brute force استفاده کرد. روی سایت شما.
مطمئناً، می توانید با رمزهای عبور فوق العاده قوی و افزونه های امنیتی وردپرس از خود محافظت کنید. اما بهترین حالت محافظت این است که به سادگی آن را غیرفعال کنید.
دو نقطه ضعف اصلی در XML-RPC وجود دارد که در گذشته مورد سوء استفاده قرار گرفته است.
اولین مورد استفاده از حملات brute force برای ورود به سایت شما است. یک مهاجم سعی می کند با استفاده از xmlrpc.php با استفاده از ترکیب های مختلف نام کاربری و رمز عبور به سایت شما دسترسی پیدا کند. آنها می توانند به طور موثر از یک فرمان برای آزمایش صدها رمز عبور مختلف استفاده کنند. این به آنها اجازه می دهد تا ابزارهای امنیتی را که معمولاً حملات brute force را شناسایی و مسدود می کنند، دور بزنند.
دومین مورد آفلاین کردن سایت ها از طریق حمله DDoS بود. هکرها از ویژگی pingback در وردپرس برای ارسال فوری پینگ بک به هزاران سایت استفاده می کنند. این ویژگی در xmlrpc.php به هکرها منبع تقریباً بی پایانی از آدرس های IP برای توزیع یک حمله DDoS بر روی آنها می دهد.
نکته حرفه ای
تهدیدات مختلف برای امنیت وب سایت شما خطراتی ایجاد می کنند. محافظت از وب سایت خود در برابر آسیب پذیری های احتمالی را می توان با انتخاب یک ارائه دهنده میزبان وردپرس قابل اعتماد به دست آورد. با انتخاب یک وردپرس ایمن از محافظت وب سایت خود اطمینان حاصل کنید host که اقدامات امنیتی پیشرفته ای را اجرا می کند.
برای بررسی اینکه آیا XML-RPC در حال اجرا است یا خیر روی سایت خود را، سپس می توانید آن را از طریق ابزاری به نام XML-RPC Validator اجرا کنید. سایت خود را از طریق ابزار اجرا کنید، و اگر پیام خطا دریافت کردید، به این معنی است که XML-RPC را فعال ندارید.
اگر پیام موفقیت آمیزی دریافت کردید، می توانید xmlrpc.php را با یکی از دو روش زیر متوقف کنید.
چگونه Xmlrpc.php را در وردپرس غیرفعال کنیم
اکنون که متوجه شدید چرا از xmlrpc.php استفاده می شود و چرا باید حذف شود، بیایید به دو روش غیرفعال کردن آن در وردپرس بپردازیم.
1. غیرفعال کردن Xmlrpc.php با افزونه ها
غیرفعال کردن XML-RPC روی سایت وردپرس شما نمی تواند ساده تر باشد.
به سادگی به افزونه ها › افزودن جدید بخش از داخل داشبورد وردپرس شما. جستجو برای XML-RPC-API را غیرفعال کنید و افزونه را نصب کنید.
افزونه را فعال کنید و همه چیز آماده است. این افزونه به طور خودکار کدهای لازم را برای خاموش کردن XML-RPC وارد می کند.
با این حال، به خاطر داشته باشید که برخی از افزونههای موجود ممکن است از بخشهایی از XML-RPC استفاده کنند، بنابراین غیرفعال کردن کامل آن میتواند باعث تضاد افزونه یا عدم کارکرد عناصر خاصی از سایت شما شود.
2. غیرفعال کردن دستی Xmlrpc.php
اگر نمی خواهید از یک افزونه استفاده کنید و ترجیح می دهید آن را به صورت دستی انجام دهید، این روش را دنبال کنید. تمام درخواست های xmlrpc.php ورودی را قبل از اینکه به وردپرس منتقل شود متوقف می کند.
فایل htaccess خود را باز کنید. ممکن است مجبور شوید بچرخید روی “نمایش فایل های مخفی” در فایل منیجر یا سرویس گیرنده FTP شما برای یافتن این فایل.
داخل شما htaccess فایل، کد زیر را قرار دهید:
# Block WordPress xmlrpc.php requests <Files xmlrpc.php> order deny,allow deny from all allow from xxx.xxx.xxx.xxx </Files>
مهم! xxx.xxx.xxx.xxx را به آدرس IP که میخواهید اجازه دسترسی بدهید، تغییر دهید xmlrpc.php یا این خط را به طور کامل حذف کنید.
نتیجه
به طور کلی، XML-RPC یک راه حل محکم برای برخی از مشکلاتی بود که به دلیل انتشار از راه دور در سایت وردپرس شما رخ داد. با این حال، با این ویژگی، حفرههای امنیتی به وجود آمد که برای برخی از صاحبان سایت وردپرس بسیار مضر بود.
برای اطمینان از ایمن ماندن سایت شما، بهتر است آن را غیرفعال کنید xmlrpc.php به طور کامل مگر اینکه به برخی از عملکردهای مورد نیاز برای انتشار از راه دور و افزونه Jetpack نیاز داشته باشید. سپس، باید از افزونههای راهحلی استفاده کنید که این ویژگیها را فراهم میکنند، در حالی که حفرههای امنیتی را اصلاح میکنید.
درباره وردپرس بیشتر بدانید
روش استفاده از XAMPP در وردپرس
آموزش وردپرس
بهترین فریم ورک های وردپرس
ضربان قلب وردپرس چیست؟
روش افزودن CSS سفارشی به وردپرس
لطفا در صورت وجود مشکل در متن یا مفهوم نبودن توضیحات، از طریق دکمه گزارش نوشتار یا درج نظر روی این مطلب ما را از جزییات مشکل مشاهده شده مطلع کنید تا به آن رسیدگی کنیم
زمان انتشار: 1402-12-31 20:52:04