حملات Zero-Day کابوس متخصصان امنیت سایبری

حملات Zero-Day کابوس متخصصان امنیت سایبری

حملات روز صفر (Zero-Day Attack) چیست و چرا کابوس متخصصان امنیت سایبری است؟

در دنیای امنیت سایبری برخی از تهدیدات، آن‌قدر پنهان و ناشناخته هستند که حتی سیستم‌های دفاعی نیز قادر به شناسایی و مقابله با آن‌ها نیستند.  «آسیب‌پذیری روز صفر» یا zero-day vulnerabilityها یکی از همین تهدیدات هستند؛ باگ‌های امنیتی که حتی توسعه‌دهندگان و وندورها هم از وجود آن‌ها بی‌اطلاع هستند.

مهاجمان سایبری با شناسایی زودهنگام این آسیب‌پذیری‌ها، پیش از انتشار هرگونه آپدیت امنیتی، اقدام به اکسپلویت می‌کنند. Zero-Day Exploit به تکنیکی اشاره دارد که مهاجم از طریق آن به زیرساخت‌ها نفوذ کرده و حمله‌ای بدون هشدار و دفاع موثر انجام می‌دهد.

همین عنصر غافلگیری است که حملات Zero-Day را به کابوس دنیای امنیت سایبری تبدیل کرده است.

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

نقطه آغاز حملات zero-day

حمله Zero-Day زمانی شروع می‌شود که یک هکر، مشکل امنیتی‌ای را شناسایی نموده که هنوز هیچ‌کس از آن اطلاع ندارد. سپس روش خاصی برای استفاده از این باگ امنیتی طراحی می‌کند تا به سیستم مورد نظر نفوذ کند.

نحوه عملکرد یک Zero-Day Exploit چگونه است؟

حمله Zero-Day با انتشار کدی آسیب‌پذیر توسط توسعه‌دهنده نرم‌افزار، آغاز می‌شود و توسط یک مهاجم سایبری، شناسایی و مورد استفاده قرار می‌گیرد. در این مرحله دو سناریو ممکن است رخ دهد:

  • یا حمله موفقیت‌آمیز بوده و منجر به سرقت هویت یا دسترسی غیرمجاز به اطلاعات می‌شود؛
  • یا شرکت سازنده با انتشار پچ امنیتی، راه نفوذ را مسدود می‌کند.

به محض اینکه پچ امنیتی، منتشر و اعمال شد، دیگر آن حمله به عنوان Zero Day Exploit شناخته نمی‌شود.

Leyla Bilge و Tudor Dumitras به عنوان محققان برجسته امنیتی، مراحل یک Zero-Day Exploitation را به هفت مرحله مجزا، تقسیم‌بندی نموده‌اند که مسیر کاملی از معرفی تا رفع آن را شامل می‌شود.

مرحله اول

ظهور یک آسیب‌پذیری

شرکت سازنده بدون آن‌که متوجه باشد، کدی را ایجاد می‌کند که دارای کد آسیب‌پذیر است.

مرحله دوم

انتشار اکسپلویت

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

مرحله سوم

شناسایی آسیب‌پذیری

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

مرحله چهارم

افشا عمومی آسیب‌پذیری

در این مرحله شرکت سازنده یا محققان امنیتی، آسیب‌پذیری را به صورت رسمی اعلام می‌کنند.

مرحله پنجم

انتشار antivirus signature

در صورتی که مهاجمان سایبری، بدافزاری را طراحی کرده باشند که به طور خاص از آسیب‌پذیری Zero-Day استفاده کند، شرکت‌های امنیتی با تحلیل این بدافزار، می‌توانند signature آن را شناسایی کنند. سپس این اطلاعات را در قالب به‌روزرسانی‌های جدید به موتورهای آنتی‌ویروس اضافه می‌کنند تا از شناسایی و مسدودسازی آن بدافزار در آینده اطمینان حاصل شود.

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

مرحله ششم

انتشار پچ امنیتی

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

مرحله هفتم

تکمیل فرایند نصب پچ آپدیت

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

در تمام مرحل فوق، سیستم‌ها در معرض حمله قرار دارند، اما حملات ۰-day تنها در بازه مراحل ۲ تا ۴ ممکن است رخ می‌دهند. اگر آسیب‌پذیری بدون محافظت باقی بماند، زمینه برای حملات ثانویه نیز فراهم می‌شود. حملات Zero-Day به ندرت به موقع شناسایی می شوند؛ به همین دلیل معمولا موجب خسارات جدی می‌شوند. گاهی شناسایی آسیب‌پذیری و پی‌بردن به نقش آن در یک حمله یا افشا  اطلاعات، روزها، ماه‌ها یا حتی سال‌ها زمان می‌برد.

نمونه‌های واقعی از حملات Zero-Day

  • Sony Pictures:  یکی از معروف‌ترین حملات Zero-Day در تاریخ است که در سال ۲۰۱۴ شبکه شرکت‌های Sony را مختل کرد و باعث افشا گسترده اطلاعات محرمانه شد.

در این حمله داده‌هایی مانند فیلم‌های در دست تولید، برنامه‌های استراتژیک شرکت و ایمیل‌های شخصی مدیران ارشد، در فضای عمومی و وب‌سایت‌های به اشتراک گذاشته شد.

  • RSA:  در سال ۲۰۱۱، یکی از جنجالی‌ترین حملات Zero-Day، صنعت امنیت سایبری را به لرزه درآورد. مهاجمان با استفاده از یک آسیب‌پذیری ناشناخته در Adobe Flash Player، به شبکه داخلی شرکت RSA نفوذ کردند. آن‌ها ابتدا با ارسال ایمیل‌های هدفمند حاوی فایل آلوده Excel که شامل فایل Flash بود، زمینه اجرای بدافزار را فراهم کردند. به محض باز شدن فایل توسط کارکنان، مهاجمان کنترل کامل سیستم‌ها را به دست گرفته و به جست‌و‌جو و سرقت اطلاعات مهم پرداختند.

اطلاعات سرقت‌شده، به سیستم احراز هویت دو مرحله‌ای SecureID شرکت RSA مربوط بود؛ زیرساختی حیاتی که میلیون‌ها کاربر در سطح جهان برای تضمین امنیت دسترسی به داده‌ها و منابع مهم سازمانی بر آن تکیه دارند.

  • Operation Aurora:  یکی از پیچیده‌ترین حملات Zero-Day بود که در سال ۲۰۰۹، بیش از ۲۰ شرکت بزرگ بین‌المللی را هدف قرار داد؛ از جمله Google، Adobe، Yahoo، Blackberry، Dow chemical و Morgan Stanley.

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

Zero-Day

راهبردهای هوشمند برای پیشگیری از حملات Zero-Day

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

بهترین اقدامات امنیتی با رویکرد پیشگیرانه برای جلوگیری از حملات Zero-Day به شرح ذیل هستند:

  • اسکن آسیب‌پذیری‌ها (Vulnerability scanning)

راهکارهایی مانند Vulnerability scanning با شبیه‌سازی حملات و بررسی دقیق خطاها، قادر هستند نقاط ضعف جدیدی را که در فرایند به‌روزرسانی‌های نرم‌افزاری ایجاد شده‌اند، شناسایی کنند. با این‌حال، این روش به تنهایی قادر به شناسایی تمامی حملات Zero-Day نیست و برای مقابله موثر کافی نیست. بنابراین سازمان‌ها باید بلافاصله پس از دریافت گزارش‌های اسکن، نسبت به تحلیل دقیق کدها، اقدام نموده و در سریع‌ترین زمان ممکن تدابیر لازم را برای جلوگیری از حملات احتمالی جلوگیری شود.

  • مدیریت پچ‌های امنیتی (Patch management)

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

بنابراین هرچه فرایند مدیریت و اعمال فایل‌های به‌روزرسانی طولانی‌‌تر باشد، سازمان در معرض خطر بالاتری برای حملات Zero-Day قرار خواهد گرفت؛ تهدیدی که به سرعت می‌تواند به خسارات جبران‌ناپذیری منجر شود.

  • اعتبارسنجی داده‌های ورودی‌ (Input validation)

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

یکی از موثرترین ابزارهای مقابله با حملات Zero-Day،  فایروال اختصاصی web application در بخش مرزی شبکه است که با تحلیل دقیق ترافیک ورودی، می‌تواند داده‌های مشکوک و مخرب را فیلتر کند.

  • Zero Day Initiative

برنامه Zero-Day Initiative یک ابتکار جهانی است که محققان امنیتی را تشویق می‌کند تا آسیب‌پذیری‌ها را به صورت مسئولانه و ایمن گزارش دهند. هدف از این برنامه، ارتقا سطح امنیت در جامعه فناوری است تا پیش از دسترسی مهاجمان سایبری، باگ‌ها و نقاط ضعف امنیتی را شناسایی و گزارش دهند.

علاوه بر این، بسیاری از سازمان‌ها نیز برنامه Bug Bounty را راه‌اندازی کرده‌اند که در آن، پژوهشگران با ارائه گزارش‌های آسیب‌پذیری، پاداش دریافت می‌کنند. این اقدامات جمعی و هماهنگ، نقشی کلیدی در افزایش امنیت نرم‌افزارها و کاهش ریسک حملات ۰-day ایفا می‌کنند.

اقدامات تکمیلی برای ایمن ماندن از حملات Zero-Day

  • ارتقا دانش و آگاهی

آگاهی از تهدیدات جدید، اولین گام برای مقابله با حملات Zero-Day است. استفاده از نرم‌افزارهای امنیتی قدرتمند، آموزش رفتارهای ایمن به کارکنان و تنظیمات صحیح مرورگرها نقش مهمی در این مسیر دارند.

تیم FortiGuard Labs با شناسایی تهدیدات نوظهور و ارائه به‌روزرسانی‌های فوری، از بروز مشکلات امنیتی پیشگیری می‌کند.

  • به‌روزرسانی مستمر سیستم‌ها

اعمال آخرین به‌روزرسانی‌ها و حذف قابلیت‌های منسوخ، نقش مهمی در کاهش تهدیدات Zero-Day دارد.

  • استفاده از فایروال نسل جدید (NGFW)

راهکارهای سنتی مانند آنتی‌ویروس‌های معمول، توان مقابله با تهدیدات Zero-Day را ندارند. در مقابل، فایروال‌های نسل جدید Fortinet با بهره‌گیری از قابلیت‌های پیشرفته Deep Inspection، علاوه بر این که بدافزارهای ناشناخته را مسدود می‌کنند؛ با تحلیل هوشمند تهدیدات، متناسب با چشم‌انداز متغیر حملات سایبری تکامل می‌یابند و امنیت شبکه سازمان را تقویت می‌کنند.

سوالات پرتکرار درباره حملات روز صفر (Zero-Day Attack)

منظور از Zero-Day Attack چیست؟

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

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

زیرا پیش از آن‌که آسیب‌پذیری، شناسایی شود و پچ امنیتی منتشر گردد، مهاجمان سایبری از طریق آن، حمله می‌کنند.