همه چیز در مورد درب‌پشتی (Backdoor) وردپرس

همه چیز در مورد درب‌پشتی (Backdoor) وردپرس

درب‌پشتی (BackDoor) در وردپرس

امنیت در ورپرس

یکی از نکاتی که اکثر مدیران سایت‌های وردپرسی توجهی بهش ندارند مسئله امنیت هست, در واقع خیلی ساده از این موضوع عبور می‌کنند و در لیست کارهایی که باید انجام بگیره نیست.

احتمالا شماهم بارها شنیده و خوانده که وردپرس بصورت پیش‌فرض یک سیستم امن و قابل اعتماد هست, این مسئله کاملا درسته اما تا زمانی که شما از افزونه‌ها و پوسته‌های متفاوتی استفاده نکرده باشید.

برای ادامه به این ضرب المثل دقت کنید:

هرکه بامش بیش, برفش بیش‌تر

خب نتیجه می‌گیریم هرچی سایت شما بزرگ‌تر باشه (از افزونه‌های بیشتر و قالب پیشرفته‌تری استفاده کند) آسیب‌پذیرتر هست.

این آسیب‌پذیری بدین معنا نیست که شما از امکانات کامل وردپرس استفاده نکنید بلکه باید در هنگام توسعه سایت به نکات امنیتی سایت خود توجه کنید.

یکی از شایع‌ترین آسیب‌پذیری‌های وردپرس درب‌پشتی یا همون BackDoor هست که سایت شما به چند دلیل میتونه دچار این آسیب‌پذیری بشه.

درب‌پشتی یا Backdoor چیست؟

درب‌پشتی یا Backdoor چیست؟

 

درب‌پشتی یک آسیب‌پذیری برای وب‌سایت می‌باشد که می‌تواند کنترل و مدیریت برخی فایل‌ها در هاست (سرور) را از راه دور به‌دست بگیرد و تمامی این فرآیند بصورت ناشناس انجام می‌گیرد.

درب‌پشتی یا Backdoor می‌تواند بصورت یک اسکریپت (برنامه‌های کوچک) در افزونه و یا قالب وردپرس قرار بگیرد و حتی بعد از پاک کردن افزونه و یا قالب مورد نظر همچنان به هاست شما دسترسی داشته باشد.

اگر سایت شما دچار این آسیب‌پذیری شده باید فایل‌های حامل این آسیب‌پذیری را از بین ببرید تا بصورت امن به فعالیت سایت خود ادامه دهید.

آسیب‌پذیری درب‌پشتی یا Backdoor می‌تواند دسترسی‌های زیر را به مهاجم ارائه کند:

  • ایجاد حساب مدیر کل در ورپرس بصورت پنهان.
  • اجرای کدهای php توسط مهاجم یا هکر.
  • ارسال ایمیل از طریق هاست و یا سرور شما.
  • ارسال و دریافت اطلاعات از طریق پایگاه‌داده یا همان Database سایت شما.
  • و هر کاری که میشه با داشتن یک هاست انجام داد.

فکر می‌کنم تا اینجا تونستم بگم این درب‌پشتی چیه و از پس چه کارهایی بر میاد!

البته ناگفته نمونه که دچار شدن هر سایتی به درب پشتی (BackDoor) میتونه صدمات شدیدی بر روی رتبه‌های سئویی یک سایت و جریمه‌های سنگینی از سمت گوگل رو در پی داشته باشه.

این یعنی اگه شما به این موضوع دقت نکنید خیلی راحت تمام زحماتی که برای رتبه‌های سایت خود در نظر گرفتید از بین خواهد رفت (به همین ترسناکی).

برای امنیت سایت چه کنیم؟

خب سوال خوب و بجایی هست, حالا که متوجه شدیم یه اسکریپت ساده به اسم درب‌پشتی (BackDoor) میتونه زحمت حتی چندین ساله‌ی ماروهم از بین ببره باید راه‌حل دچار نشدن و یا پاکسازی سایت وردپرسی از این اسکریپت رو هم بدونیم.

فرض می‌کنیم سایت شما دچار این اسکریپت مخرب شده و نیاز فوری به پاکسازی دارید.

خب برای ادامه کار یه نفس عمیق بکشید و نگران هیچ موضوعی نباشید, همه چیز ساده و در عین حال لذت بخش هست.

  1. همیشه اولین قدم شناسایی فایل‌های آلوده هست.
  2. پاکسازی فایل‌های آلوده شناسایی شده.
  3. بررسی مجدد و پاکسازی نهایی.
  4. بروزرسانی فایل‌های هسته وردپرس.
  5. ایمن سازی سایت برای عدم تکرار این آسیب.

شناسایی فایل‌های آلوده

حتما با خودتون فکر می‌کنید چطوری باید شروع کرد, خب میریم سراغ فایل‌های سایت خودمون (فایل‌ها در روت هاست موجود هستند, که بسته به نوع کنترل پنل مورد هاست میتونه سی‌پنل و یا دایرکت ادمین و یا شایدم پلسک باشه دسترسی بهشون هم متفاوته).

فرض ما اینه که در روت هاست خودمون قرار داریم و پوشه‌ها (Directory) و فایل‌های وردپرس رو مشاهده می‌کنیم.

اما به دنبال چی باشیم؟فایل‌های آلوده و مشکوک رو چجوری میشه شناخت؟

برای هر مشکل یه راه‌حل هم هست, ابتدا سراغ دایرکتوری‌ها و فایل‌هایی که معمولا دچار این آلودگی میشن میریم:

wp-config.php

یکی از مهم‌ترین فایل‌های وردپرس بدون شک فایل wp-config.php هست و از همین رو هدف تمام حملات هکری هم واقع میشه, پس اگه بررسی کردید و نکته مشکوکی رو مشاهده کردید لابه لای کدهای این فایل حتما اقدام به بازسازی این فایل کنید.(معمولا اسکریپت‌ها در ابتدای فایل‌ها قرار می‌گیرند و بصورت کد شده و نامعلوم قابل مشاهده هستند)

wp-Includes

یکی از پوشه‌هایی که تقریبا بی سروصدا و به دور از تغییرات بکار خود در وردپرس ادامه می‌دهد و یک جای دنج برای آپلود کردن اسکریپت مخرب درب‌پشتی هست, معمولا به دلیل وجود فایل‌های جاوا اسکریپت در این پوشه هکرها اقدام به تزریق فایل‌های مخرب درون این دایرکتوری می‌کنند.

wp-content/Themes

پوسته‌های نال غیر ایمن میتونن به راحتی خودشون حمل کننده این اسکریپت باشن, پس همیشه پوسته‌هارو از سایت‌های معتبر دانلود کنید, همینطور یادتون نره که وقتی از یک پوسته وردپرس استفاده نمی‌کنید و عملا غیرفعال هست حتما از درون سایت حذفش کنید.

wp-content/Plugins

تمام موارد پوسته‌های وردپرس در مورد افزونه‌های وردپرسی هم صدق می‌کنه, پس اگه از افزونه‌ای استفاده نمی‌کنیم با یک دکمه حذف کردن یه امتیاز به امنیت سایت خودمون اضافه کنیم, پوسته‌ها و افزونه‌های غیرفعال محل مناسبی برای قرارگیری اسکریپت‌مخرب درب‌پشتی هستند.

wp-content/Uploads

به‌به چه جای خوبی برای آپلود کردن فایل‌های آلوده به درب‌پشتی (BackDoor)؛ جایی که تقریبا صدها و یا هزاران تصویر با اندازه‌های مختلف و درون پوشه‌های منظمی از تاریخ‌ها وجود داره و تقریبا هیچ‌کس بررسیش نمیکنه بنظرتون محل خوبی برای آپلود کردن این اسکریپت نیست؟شک نکنید این پوشه از دست هیچ هکری در نمیره و حتما فایل‌هایی داخلش برای استفاده ‌درب‌پشتی هستند.

در هر حال این تمام ماجرا نیست و ممکنه فایل‌های دیگه‌ای هم وجود داشته باشه و دچار آلودگی درب‌پشتی (BackDoor) شده باشند, افراد حرفه‌ای و با تجربه معمولا خیلی راحت این فایل‌هارو شناسایی می‌کنند و کار چندان سختی براشون نیست, اما افرادی که هنوز به این تجربه نرسیدن باید چیکار کنن؟؟
خب میتونم بگم که باید از یک سری ابزار استفاده کنید, ابتدا از پشتیبان هاست خودتون درخواست اسکن کنید و بگید نتیجه رو بهتون ارائه کنند.

از افزونه‌های اسکن وردپرس استفاده کنید

Exploit Scanner

Anti-Malware Security and Brute-Force Firewall

به این موضوع هم توجه داشته باشید که فایل‌های آلوده میتونن شبیه به فایل‌های وردپرسی باشند, پس هر فایلی که با ساختار wp-***.php باشه فایل وردپرسی نیست.

تا یادم نرفته بگم که حتما یه نگاهی به سطح دسترسی فایل‌های وردپرسی هم بندازید و مطمئن بشید که سطح دسترسی فایل‌ها برابر با 644 و سطح دسترسی برای پوشه‌ها برابر 755 باشه.

از بررسی کدهای موجود در فایل .htaccess هم غافل نباشید.

برخی افزونه‌ها همیشه دارای حفره/باگ امنیتی هستند, مثل Revolation Slider پس حواستون به بروز بودن این افزونه‌ها باشه.

پاکسازی فایل‌های آلوده

حالا که تونستیم فایل‌ها رو ردیابی کنیم چطور میشه از شرشون خلاص شد؟

اگه فایل اضافه هست که مستقیما حذفش می‌کنیم, اما اگه فایل آلوده جزئی از فایل‌های اصلی وردپرس هست باید پاکسازی انجام بشه.

بذارید خلاصه بگم شما باید یکبار سایت رو پاک کنید (جهت اطمینان از حذف کامل فایل‌های آلوده), اما موقع حذف دستی و جایگزینی باید به یکسری نکات توجه کنید تا اطلاعات سایت شما از بین نره.

  1. یه فایل پشتیبانی از کل سایتتون به همراه دیتابیس بگیرید.
  2. تمامی فایل‌ها و پوشه‌های وردپرس رو به جز فایل wp-config.php و پوشه wp-content حذف کنید و مجددا بصورت دستی وردپرس رو آپلود/جایگزین کنید.
  3. وارد مدیریت سایت شوید و از بخش تنظیمات>پیوندهای یکتا بر روی دکمه بروزرسانی کلیک کنید(برای ساختن مجدد فایل htaccess لازم هست وگرنه به صفحه 404 بر میخورید).
  4. حالا باید فایل‌ها و پوشه‌های موجود در پوشه/دایرکتوری wp-content رو بصورت دستی بررسی و پاکسازی کنید(استفاده از افزونه ها برای اسکن لازمتون میشه).
  5. فایل wp-config.php رو هم پاکسازی کنید و در صورت لزوم از نسخه wp-config-sample.php استفاده و اطلاعات دیتابیس رو جایگزین مقادیر پیش فرض این فایل کنید.
  6. رمز ورود به هاست خود را تغییر دهید.
  7. رمز دیتابیس خود را تغییر دهید.
  8. سعی کنید وردپرس و افزونه و قالب خود را بروزرسانی کنید و همیشه بروز باشید.
  9. اگه از سمت گوگل در بخش Search Cosole > manual action پیغامی مبنی بر مخرب بودن سایت خودتون دریافت کردید درخواست بازبینی دهید.

با انجام موارد فوق سایت شما پاکسازی می‌شود اما همچنان امکان وجود خطر هست و برای اطمینان از دچار نشدن مجدد به وضعیت خطرناک باید نکات امنیتی در وردپرس رو رعایت کنید.

مهدی سارانی
مهدی سارانی
توسعه دهنده وب و علاقمند به دنبال کردن مطالب آموزشی جدید و به اشتراک گذاری آن با دیگران.

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

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