🛡️ چطور از حملات XML-RPC در وردپرس جلوگیری کنیم؟
💻 XML-RPC چیست؟
XML-RPC یک پروتکل قدیمی است که وردپرس برای ارتباط از راه دور (Remote Access) از آن استفاده میکرد. این قابلیت به کاربران امکان میداد از طریق اپلیکیشنهای موبایل یا سرویسهای شخص ثالث به سایت وردپرسی متصل شوند.
🔗 مسیر آن معمولاً:https://example.com/xmlrpc.php
⚠️ چرا XML-RPC خطرناک است؟
در گذشته، هکرها از این فایل برای حملات مختلفی استفاده میکردند، مثل:
🔹 Brute Force (حدس رمز عبور با درخواستهای متعدد)
🔹 DDoS (ارسال حجم زیادی از درخواستها برای از کار انداختن سایت)
🔹 Exploits (سوءاستفاده از آسیبپذیریهای احتمالی)
🧰 روشهای جلوگیری از حملات XML-RPC در وردپرس
1️⃣ غیرفعال کردن کامل XML-RPC
اگر نیازی به XML-RPC ندارید (که معمولاً اکثر سایتها نیازی ندارند)، بهترین کار غیرفعال کردن کامل آن است.
روش 1 – غیرفعال کردن با افزونه
✅ افزونههایی مثل Disable XML-RPC یا Disable XML-RPC Pingback میتوانند بهراحتی این قابلیت را غیرفعال کنند.
روش 2 – غیرفعال کردن با کد
میتوانید این کد را در functions.php قالب یا افزونه اختصاصی قرار دهید:
🔒 با این روش، فایل xmlrpc.php عملاً از کار میافتد.
2️⃣ بستن دسترسی XML-RPC از طریق htaccess
اگر به پنل هاست یا سرور دسترسی دارید، میتوانید با این کد در .htaccess دسترسی به فایل را ببندید:
🔐 این روش جلوی همه درخواستهای مستقیم به این فایل را میگیرد.
3️⃣ محدود کردن دسترسی به IPهای خاص
اگر فقط یک سرویس خاص (مثل Jetpack) به XML-RPC نیاز دارد، میتوانید دسترسی را فقط به IPهای مجاز بدهید. مثلاً:
📌 این روش فقط برای سایتهایی کاربرد دارد که حتماً باید XML-RPC فعال باشد.
4️⃣ مانیتورینگ و شناسایی حملات
📊 با نصب افزونههای امنیتی مثل Wordfence یا Sucuri میتوانید:
✔️ حملات Brute Force روی XML-RPC را شناسایی کنید.
✔️ درخواستهای مشکوک را بلاک کنید.
✔️ هشدارهای امنیتی دریافت کنید.
5️⃣ غیرفعال کردن قابلیت Pingback
حتی اگر XML-RPC را نیاز دارید، میتوانید Pingback (که یک نقطه ضعف مهم است) را جداگانه غیرفعال کنید:
🚨 این کد فقط Pingback را میبندد و بقیه قابلیتهای XML-RPC فعال میماند.
📊 مقایسه روشها
روش | امنیت | کارایی | نیاز به تخصص |
---|---|---|---|
غیرفعالسازی با افزونه | بالا | راحت | کم |
غیرفعالسازی با کد | بالا | متوسط | متوسط |
بستن از htaccess | بسیار بالا | متوسط | بالا |
محدود کردن IP | متوسط | متوسط | بالا |
مانیتورینگ با افزونه | بالا | راحت | کم |
غیرفعالسازی Pingback | متوسط | راحت | کم |
✅ جمعبندی و توصیه نهایی
اگر به قابلیت XML-RPC نیازی ندارید:
🔒 بهترین راه، غیرفعال کردن کامل آن با افزونه یا کد است.
اگر مجبورید XML-RPC فعال بماند:
🛡️ حتماً دسترسی را به IPهای مطمئن محدود کنید و Pingback را غیرفعال کنید.
همچنین نصب افزونههای امنیتی برای مانیتورینگ مداوم حملات توصیه میشود. 🔍
📚 منابع پیشنهادی
- مستندات رسمی وردپرس
- بلاگ امنیتی Sucuri
- راهنمای Wordfence در مورد XML-RPC
بدون دیدگاه