دو داستان متفاوت، یک هدف مشترک

یکی از اولین پرونده‌هایی که در زمینهٔ بدافزار بررسی کردم، سایت یک فروشگاه آنلاین بود. مدیر سایت تصور می‌کرد که یک بدافزار ساده را پاک کرده، اما چند روز بعد متوجه شد که سایت مجدداً آلوده شده است. علت این بود که بدافزار اول یک تروجان بود و بدافزار دوم یک کرم. این دو نوع بدافزار، با وجود شباهت‌های ظاهری، مکانیزم‌های کاملاً متفاوتی دارند. شناخت این تفاوت‌ها اولین گام در دفاع صحیح است. اگر با مفاهیم پایه آشنا نیستید، پیشنهاد می‌کنم ابتدا بدافزار چیست و چگونه وارد سایت می‌شود را بخوانید.

تروجان چیست؟

تروجان یا اسب تروا به نوعی بدافزار گفته می‌شود که خودش را به‌عنوان یک نرم‌افزار مفید یا بی‌خطر جا می‌زند، اما در پشت صحنه، کارهای مخرب انجام می‌دهد. اصطلاح تروجان از داستان اسب تروا در اساطیر یونان گرفته شده است: یک هدیهٔ به‌ظاهر بی‌خطر که در واقع حاوی سربازان است.

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

ویژگی مهم تروجان این است که برای نفوذ به سایت شما، نیازمند اقدام کاربر است. شما باید یک بستهٔ آلوده را دانلود و نصب کنید تا تروجان فعال شود. به همین دلیل، منشأ اصلی تروجان‌ها در سایت‌های وردپرسی، افزونه‌ها و قالب‌های ناشناس یا کرک‌شده است. اگر به‌دنبال شناخت نحوهٔ انتخاب افزونهٔ امن هستید، چگونه افزونهٔ مطمئن دانلود کنیم راهنمای دقیقی ارائه می‌دهد.

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

کرم یا Worm نوعی بدافزار است که خودش را در شبکه تکثیر می‌کند، بدون نیاز به هرگونه اقدام کاربر. این نوع بدافزار از آسیب‌پذیری‌ها یا سرویس‌های باز برای پخش شدن استفاده می‌کند و می‌تواند به‌سرعت از یک سیستم به سیستم دیگر سرایت کند.

در دنیای وب، کرم‌ها معمولاً از آسیب‌پذیری‌های سرور یا پلتفرم استفاده می‌کنند. یکی از معروف‌ترین نمونه‌ها، کرمی است که در سال‌های گذشته از آسیب‌پذیری در وردپرس استفاده کرد و هزاران سایت را در عرض چند ساعت آلوده کرد. این نوع بدافزار به‌ویژه خطرناک است، چون به‌محض آلوده شدن یک سایت، سایت‌های مجاور را هم آلوده می‌کند.

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

تفاوت‌های کلیدی تروجان و کرم

شاید در نگاه اول، تروجان و کرم شبیه هم به نظر برسند، اما تفاوت‌های مهمی دارند که بر استراتژی دفاع اثر می‌گذارد:

  • نحوهٔ نفوذ: تروجان نیازمند اقدام کاربر است و خودش را به‌عنوان نرم‌افزار مفید جا می‌زند. کرم نیازی به اقدام کاربر ندارد و از آسیب‌پذیری‌ها استفاده می‌کند.
  • نحوهٔ تکثیر: تروجان معمولاً تکثیر نمی‌شود یا تکثیر محدودی دارد. کرم به‌طور مداوم خودش را از یک سیستم به سیستم دیگر پخش می‌کند.
  • سرعت گسترش: تروجان‌ها اغلب آهسته و هدفمند هستند. کرم‌ها می‌توانند به‌سرعت هزاران سیستم را آلوده کنند.
  • هدف: تروجان‌ها معمولاً برای دسترسی مداوم یا سرقت داده استفاده می‌شوند. کرم‌ها بیشتر برای تکثیر و آلودگی گسترده طراحی می‌شوند.
  • تشخیص و مهار: مهار تروجان‌ها با شناسایی و حذف بستهٔ آلوده امکان‌پذیر است. مهار کرم‌ها نیازمند به‌روزرسانی سریع و پایش مداوم است.
  • نقش در زنجیرهٔ حمله: تروجان‌ها اغلب به‌عنوان درِ ورود اولیه عمل می‌کنند، در حالی که کرم‌ها برای پخش سریع در شبکه استفاده می‌شوند.

این تفاوت‌ها نشان می‌دهد که هرکدام از این دو نوع بدافزار، استراتژی دفاعی متفاوتی می‌طلبند. اگر می‌خواهید درک عمیق‌تری از سایر انواع بدافزار داشته باشید، مطالعهٔ رنسام‌ور چیست و چگونه از سایت محافظت کنیم به شما کمک می‌کند.

نمونه‌های واقعی

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

در پرونده‌ای دیگر، یک سایت با افزونه‌ای آسیب‌پذیر آلوده شد. این آسیب‌پذیری توسط یک کرم به‌طور خودکار شناسایی شد و در عرض چند ساعت، چندین سایت دیگر روی همان سرور آلوده شدند. این دو پرونده نشان می‌دهد که تروجان و کرم اغلب با هم کار می‌کنند: تروجان درِ ورود را فراهم می‌کند و کرم آلودگی را گسترش می‌دهد.

چرا سایت‌های وردپرسی در معرض هر دو نوع هستند؟

سایت‌های وردپرسی به‌دلیل ماهیت خود، در معرض هر دو نوع تروجان و کرم قرار دارند:

  • اکوسیستم افزونه‌محور: افزونه‌ها یکی از رایج‌ترین مسیرهای ورود تروجان‌ها هستند. اگر توسعه‌دهندهٔ افزونه‌ای کد آلوده را وارد کند، آن کد روی همهٔ سایت‌هایی که از آن افزونه استفاده می‌کنند اجرا می‌شود.
  • سهم بازار بالا: چون وردپرس پرکاربردترین CMS است، هدف جذاب‌تری برای کرم‌هایی است که به دنبال گسترش سریع هستند.
  • نسخه‌های قدیمی: سایت‌هایی که به‌روزرسانی نمی‌کنند، در برابر آسیب‌پذیری‌هایی که کرم‌ها از آن‌ها استفاده می‌کنند آسیب‌پذیر هستند.
  • دسترسی‌های گسترده: افزونه‌ها و قالب‌ها به‌طور معمول دسترسی وسیعی به سرور و دیتابیس دارند، و همین باعث می‌شود که آلودگی یکی از آن‌ها به آلودگی کل سایت منجر شود.

توضیح کامل این موضوع در چرا وردپرس هدف حملات سایبری است آمده است.

روش‌های دفاع در برابر تروجان

دفاع در برابر تروجان‌ها بیشتر بر پایهٔ اعتماد و بررسی منبع است. چند اصل کلیدی:

  • فقط از منابع معتبر: افزونه‌ها و قالب‌ها را فقط از مخزن رسمی یا سایت‌های شناخته‌شده دانلود کنید.
  • پرهیز از کرک‌شده‌ها: افزونه‌ها و قالب‌های نال در واقع ممکن است خودشان تروجان باشند.
  • بررسی تغییرات فایل‌ها: پس از نصب افزونهٔ جدید، بررسی کنید که چه فایل‌هایی اضافه شده است.
  • اسکن دوره‌ای: از ابزارهای اسکن بدافزار استفاده کنید.
  • محدودسازی دسترسی: اصل کمترین امتیاز را روی دسترسی کاربران و افزونه‌ها اجرا کنید.

راهنمای انتخاب ابزار امنیتی در بهترین افزونه‌های امنیتی وردپرس آمده است.

روش‌های دفاع در برابر کرم

دفاع در برابر کرم‌ها نیازمند رویکرد متفاوتی است. این نوع بدافزار از آسیب‌پذیری‌ها استفاده می‌کند، پس دفاع اول این است که این آسیب‌پذیری‌ها را ببندید:

  • به‌روزرسانی سریع: هستهٔ وردپرس، قالب و افزونه‌ها را بلافاصله پس از انتشار نسخهٔ جدید به‌روزرسانی کنید.
  • پایش رفتار غیرعادی: کرم‌ها اغلب رفتار غیرعادی مثل درخواست‌های مکرر یا استفادهٔ زیاد از CPU ایجاد می‌کنند.
  • پایش شبکه: اگر سرویس‌های متعدد روی یک سرور دارید، پایش شبکه می‌تواند گسترش کرم را متوقف کند.
  • بخش‌بندی سرور: سایت‌های روی یک سرور را از هم جدا کنید تا آلودگی یکی به آلودگی همه منجر نشود.
  • فایروال و WAF: فایروال‌های نرم‌افزاری می‌توانند برخی درخواست‌های مخرب را مسدود کنند.

نحوهٔ پایش در آموزش تست امنیت وب و ابزارهای مرتبط در اسکنرهای آسیب‌پذیری وب کدامند آمده است.

چطور بدانیم سایت به تروجان آلوده است یا کرم؟

شناخت نوع بدافزار، استراتژی دفاعی را تعیین می‌کند. برخی نشانه‌ها به شما کمک می‌کند که نوع بدافزار را تشخیص دهید:

  • نشانه‌های تروجان: پیدا شدن یک فایل ناشناس در یک افزونه یا قالب، دسترسی غیرمجاز به پیشخوان از یک IP خاص، تغییرات کوچک در فایل‌های سایت.
  • نشانه‌های کرم: آلودگی سریع چند سایت روی یک سرور، درخواست‌های مکرر به یک URL خاص، بار زیاد روی سرور بدون دلیل واضح.
  • نشانه‌های مشترک: فایل‌های ناشناس، تغییرات ناگهانی در ساختار سایت، ریدایرکت‌های مخفی.

فهرست کامل نشانه‌های آلودگی در علائم هک و بدافزار در وردپرس کدامند آمده است. اگر به‌دنبال مراحل پاک‌سازی هستید، راهنمای پاک‌سازی سایت هک‌شده مسیر دقیقی ارائه می‌دهد. اگر با هدرهای امنیتی هم آشنا شوید، می‌توانید بخشی از دفاع را از آن لایه شروع کنید: هدرهای امنیتی HTTP چه کاربردی دارند راهنمای عملی خوبی است. مستندات ویکی‌پدیا در مورد Trojan horse (computing) و Computer worm هم منابع تخصصی معتبری هستند.

پرسش‌های پرتکرار دربارهٔ تروجان و کرم

آیا تروجان و کرم همیشه جدا از هم هستند؟ خیر. در بسیاری از حملات واقعی، این دو با هم ترکیب می‌شوند. تروجان برای دسترسی اولیه استفاده می‌شود و کرم برای گسترش آلودگی.

آیا آنتی‌ویروس‌ها هر دو را تشخیص می‌دهند؟ اغلب بله، اما چون این نوع بدافزارها به‌سرعت تغییر می‌کنند، آنتی‌ویروس‌های امضا-محور همیشه نمی‌توانند جدیدترین نسخه‌ها را تشخیص دهند. استفاده از ابزارهای تحلیل رفتار مؤثرتر است.

آیا وردپرس در برابر کرم آسیب‌پذیرتر از سایر سیستم‌هاست؟ به دلیل سهم بازار بالا، هدف جذاب‌تری است. اما آسیب‌پذیری ذاتی بیشتر ندارد. تفاوت اصلی در نحوهٔ مدیریت آن است.

چگونه از گسترش کرم جلوگیری کنم؟ به‌روزرسانی سریع، پایش رفتار غیرعادی، محدودسازی دسترسی و بخش‌بندی سرور، مؤثرترین راه‌های پیشگیری هستند.

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

سخن آخر: شناخت دقیق، دفاع دقیق

تروجان و کرم، با وجود شباهت‌های ظاهری، مکانیزم‌های کاملاً متفاوتی دارند. شناخت دقیق این تفاوت‌ها به شما کمک می‌کند تا استراتژی دفاعی مناسب را انتخاب کنید. برای دفاع در برابر تروجان، اعتماد و بررسی منبع حیاتی است. برای دفاع در برابر کرم، به‌روزرسانی سریع و پایش مستمر. اگر تجربه‌ای از مواجهه با این نوع بدافزارها در سایت خودتان دارید یا سؤالی دربارهٔ نحوهٔ دفاع در برابر آن‌ها دارید، در دیدگاه‌ها بنویسید؛ تجربهٔ شما به خوانندگان دیگر کمک می‌کند تا بهتر آمادهٔ مواجهه با این تهدیدها باشند.