حملات Zero-day به حملاتی گفته میشود که در آن مهاجمان از آسیبپذیریهای ناشناخته یا جدید در نرمافزارها یا سیستمها بهرهبرداری میکنند. این آسیبپذیریها پیش از آنکه سازندگان یا توسعهدهندگان آنها را شناسایی کرده و اصلاح کنند، مورد سوءاستفاده قرار میگیرند. از آنجایی که اطلاعاتی در مورد آسیبپذیری در دسترس نیست و راهحلی برای آن ارائه نشده است، مهاجمین میتوانند به راحتی از آن بهرهبرداری کنند و بدون آنکه شناسایی شوند، به سیستمهای هدف دسترسی پیدا کنند یا اطلاعات حساس را به سرقت ببرند. همین امر، آسیبپذیریهای روز صفر را به تهدیدات جدی امنیتی تبدیل میکند. این حملات معمولاً توسط هکرها، گروههای مخرب سایبری یا حتی سازمانهای جاسوسی و دولتی برای اهداف مختلفی مانند دسترسی به دادههای حساس، سرقت اطلاعات مالی، خرابکاری در سیستمها و یا ایجاد اختلال در عملیات یک سازمان صورت میگیرد. همچنین، مهاجمین میتوانند از این آسیبپذیریها برای نفوذ به شبکههای گسترده و تهدید امنیت ملی یا تجاری استفاده کنند. با این حال، از آنجا که شناسایی این نوع حملات بسیار پیچیده و دشوار است، مقابله با آنها نیازمند استفاده از ابزارهای امنیتی پیشرفته مانند EDR، بهروزرسانیهای منظم سیستمها و آموزش کاربران در جهت شناسایی و پیشگیری از این تهدیدات است. دلیل نامگذاری حملات Zero-day این است که این نوع حملات پیش از شناسایی آسیبپذیری رخ میدهند. اصطلاح روز صفر به این معنا است که توسعهدهندگان یا فروشندگان نرمافزار تنها به تازگی از این نقص آگاه شده و زمان کافی برای اصلاح آن ندارند. زمانی که مهاجمان آسیبپذیری روز صفر را شناسایی میکنند، نیاز به یک مکانیزم تحویل برای دسترسی به سیستم آسیبپذیر دارند. در بسیاری از موارد، مکانیزم تحویل، ایمیلهای مهندسیشده اجتماعی هستند. این ایمیلها یا پیامهای دیگر ظاهراً از سوی یک شریک کاری یا مرجع قانونی ارسال میشوند، اما در واقع از سوی مهاجمان هستند. این پیامها تلاش میکنند تا کاربر را متقاعد کنند که اقدامی مانند باز کردن یک فایل یا بازدید از یک وبسایت مخرب را انجام دهد و به طور ناخواسته این اکسپلویت را فعال کند. آسیبپذیریها میتوانند به اشکال مختلفی ظاهر شوند، مانند مشکلات در رمزگذاری دادهها، SQL Injection، buffer overflows یا مشکلات در امنیت گذرواژهها و غیره. به دلیل تنوع این آسیبپذیریها، شناسایی و پیشگیری از آنها به طور پیشگیرانه دشوار است، که این میتواند خبر خوبی باشد زیرا هکرها نیز برای یافتن آنها با چالش روبهرو میشوند. با این حال، همین دشواری در شناسایی این آسیبپذیریها باعث میشود که محافظت مؤثر در برابر آنها سخت باشد.
حملات روز صفر(Zero-day) چگونه کار میکنند؟
نرمافزارها اغلب دارای آسیبپذیریهای امنیتی هستند که هکرها میتوانند از آنها برای ایجاد مشکلات استفاده کنند. توسعهدهندگان نرمافزار همواره به دنبال آسیبپذیریها برای رفع آنها هستند، به این معنی که راهحلی پیدا کرده و آن را در یک بهروزرسانی جدید منتشر میکنند. با این حال، گاهی اوقات هکرها یا عوامل مخرب قبل از توسعهدهندگان آسیبپذیری را شناسایی میکنند. در حالی که آسیبپذیری هنوز موجود است، مهاجمان میتوانند کدی بنویسند و از آن برای سوءاستفاده از آسیبپذیریها پیادهسازی کنند. به این کد نوشته شده، کد سوءاستفاده یا Exploit Code گفته میشود. این کد ممکن است باعث شود کاربران نرمافزار مورد هدف قرار بگیرند. پس از شناسایی آسیبپذیری روز صفر، مهاجمان نیاز دارند که راهی برای دسترسی به سیستم آسیبپذیر پیدا کنند. که میتواند شامل ارسال پیامی به سیستم هدف باشد. این پیام سعی میکند کاربر را متقاعد کند که عملی مانند باز کردن یک فایل یا بازدید از یک وبسایت مخرب را انجام دهد. این کار باعث دانلود بدافزار مهاجم میشود که به فایلهای کاربر نفوذ کرده و دادههای محرمانه را سرقت میکند. زمانی که یک آسیبپذیری شناخته میشود، توسعهدهندگان سعی میکنند جهت جلوگیری از حملات آن را برطرف کنند. با این حال، آسیبپذیریهای امنیتی اغلب فوراً کشف نمیشوند. ممکن است چندین روز، هفتهها یا حتی ماهها طول بکشد تا توسعهدهندگان آسیبپذیریای که منجر به حمله شده است را شناسایی کنند. حتی پس از انتشار یک بهروزرسانی، همه کاربران فوراً آن را اعمال نمیکنند. در سالهای اخیر، هکرها سریعتر از همیشه از آسیبپذیریها پس از کشف آنها سوءاستفاده میکنند. پس از اینکه یک سوءاستفاده کشف و رفع شد، دیگر به عنوان تهدید روز صفر شناخته نمیشود.
واژههای آسیبپذیری (Vulnerability)، سوءاستفاده (Exploit) و حمله (Attack) معمولاً در کنار عبارت Zero-Day استفاده میشوند و مفید است که تفاوت آنها را درک کنید:
- zero-day vulnerability: آسیبپذیری روز صفر یک آسیبپذیری نرمافزاری است که توسط مهاجمان قبل از آنکه فروشنده یا توسعه دهنده از آن مطلع شود، کشف شده است. چون توسعه دهندگان از آن آگاه نیستند، هیچ راهحل(Patch) برای آسیبپذیریهای روز صفر آن نرمافزار وجود ندارد که باعث میشود حملات احتمالاً موفق شوند.
- zero-day exploit: سوءاستفاده روز صفر روشی است که هکرها برای حمله به سیستمها با آسیبپذیری که قبلاً شناسایی نشده، استفاده میکنند.
- zero-day attack: حمله روز صفر استفاده از zero-day exploit برای ایجاد آسیب یا سرقت دادهها از سیستم آسیبدیده توسط آسیبپذیری است.
نمونههایی از تهدیدات روز صفر(Zero-day):
حملات Zero-day میتوانند در هر زمان و برای هر شرکتی اتفاق بیفتند و معمولاً بدون اینکه آنها از وقوع این حملات باخبر باشند، رخ میدهند. از جمله معروفترین نمونههای حملات Zero-day میتوان به موارد زیر اشاره کرد:
- Sony Pictures: این حمله یکی از معروفترین حملات روز صفر میباشد که شبکه سونی را تحت تأثیر قرار داد و منجر به افشای اطلاعات حساس آن در سایتهای به اشتراکگذاری فایل شد. این حمله در اواخر سال ۲۰۱۴ رخ داد و اطلاعاتی از قبیل فیلمهای آینده، برنامههای تجاری شرکت و آدرسهای ایمیل شخصی مدیران ارشد فاش شد.
- RSA: در حملهای که در سال ۲۰۱۱ به شرکت امنیتی RSA صورت گرفت، هکرها از یک آسیبپذیری Zero-day در Adobe Flash Player که هنوز بهروزرسانی نشده بود، برای نفوذ به شبکه شرکت امنیتی RSA استفاده کردند. مهاجمان ایمیلهایی با فایلهای Excel پیوست شده ارسال کردند که شامل یک فایل Flash مخرب بود. این فایل Flash از آسیبپذیری روز صفر برای دسترسی به سیستمها استفاده میکرد. هنگامی که کارکنان فایلهای Excel را باز کردند، مهاجمان توانستند کنترل از راه دور رایانههای آنها را به دست آورند و از این دسترسی برای جستجو و سرقت دادهها بهرهبرداری کنند. دادههای سرقت شده شامل اطلاعات مربوط به محصولات SecurID بودند؛ محصولات احراز هویت دو عاملی که کارکنان RSA برای دسترسی به اطلاعات و دستگاههای حساس از آنها استفاده میکردند. این حمله نه تنها امنیت دادههای حساس شرکت را تهدید کرد، بلکه اعتماد به سیستمهای احراز هویت دو عاملی را نیز تحت تأثیر قرار داد.
- Operation Aurora: در سال ۲۰۰۹، یک حمله Zero-day به منظور دسترسی به مالکیت معنوی بیش از ۲۰ سازمان بزرگ جهانی، از جمله Adobe Systems، Blackberry، Dow Chemical، Google، Morgan Stanley و Yahoo، صورت گرفت. این حمله از آسیبپذیریهای موجود در Internet Explorer، نسخههای مختلف نرمافزارهای ویندوز و همچنین Perforce (ابزاری که گوگل برای مدیریت کد منبع خود استفاده میکرد) سوءاستفاده کرد. هدف اصلی این حمله دسترسی به مخازن کد منبع در سازمانهای فناوری پیشرفته و تغییر آنها بود. این حمله به صورت ویژهای خطرناک بود، زیرا به اطلاعات حیاتی و حساس در شرکتهای بزرگ و پیشرفته دسترسی پیدا میکرد و میتوانست تأثیرات عمیقی بر امنیت و اعتبار این سازمانها بگذارد.

چگونه حملات روز صفر(Zero-day) را شناسایی کنیم؟
شناسایی حملات zero-day میتواند چالشبرانگیز باشد. به دلیل ماهیت این نوع آسیبپذیریها، اطلاعات دقیق درباره بهرهبرداری از آسیبپذیریهای روز صفر فقط پس از شناسایی آنها در دسترس قرار میگیرد. سازمانهایی که هدف حمله قرار میگیرند ممکن است شاهد ترافیک غیرمنتظره یا فعالیتهای مشکوک اسکن از سوی یک سرویس یا client باشند. برخی از تکنیکهای شناسایی حملات روز صفر عبارتند از:
- استفاده از پایگاهدادههای موجود از بدافزارها و نحوه رفتار آنها به عنوان مرجع. اگرچه این پایگاهدادهها به سرعت بهروزرسانی میشوند و میتوانند به عنوان نقطه مرجع مفید باشند، اما به طور طبیعی، آسیبپذیریهای روز صفر جدید و ناشناخته هستند، بنابراین محدودیتهایی در این زمینه وجود دارد.
- برخی تکنیکها به ویژگیهای بدافزارهای روز صفر بر اساس نحوه تعامل آنها با سیستم هدف نگاه میکنند. به جای بررسی کد فایلهای ورودی، این روش به تعاملات آنها با نرمافزارهای موجود توجه میکند و سعی میکند مشخص کند که آیا این تعاملات ناشی از اقدامات مخرب است یا خیر.
- استفاده از یادگیری ماشین برای شناسایی دادهها از بهرهبرداریهای قبلی به منظور ایجاد یک پایگاهداده از رفتار امن سیستم بر اساس تعاملات گذشته و کنونی با سیستم. هرچه دادههای بیشتری در دسترس باشد، شناسایی دقیقتر و قابلاعتمادتر میشود.
اغلب از ترکیبی از سیستمهای شناسایی مختلف برای شناسایی حملات روز صفر استفاده میشود.
چگونه سازمانها میتوانند از خود در برابر حملات روز صفر محافظت کنند؟
محافظت از سازمانها در برابر حملات Zero-day یک چالش بزرگ است، زیرا این حملات میتوانند به اشکال مختلف و در مسیرهای پیچیدهای ظاهر شوند. تقریباً هر نوع آسیبپذیری امنیتی، در صورت عدم شناسایی و رفع به موقع، میتواند تبدیل به هدفی برای حملات Zero-day شود. از آنجا که این حملات از آسیبپذیریهایی استفاده میکنند که هنوز شناسایی نشدهاند یا بهروزرسانی برای آنها منتشر نشده است، شناسایی و پیشگیری از آنها بسیار دشوار است. علاوه بر این، بسیاری از توسعهدهندگان نرمافزار عمداً تلاش میکنند تا آسیبپذیریها را به طور عمومی افشا نکنند. این اقدام به آنها این فرصت را میدهد که پیش از آنکه هکرها از وجود آسیبپذیری آگاه شوند، یک Patch برای اصلاح آن منتشر کنند و بدین ترتیب از سوءاستفادههای احتمالی جلوگیری کنند. این رویکرد، اگرچه میتواند خطرات حملات Zero-day را کاهش دهد، اما همچنان چالشهای بزرگی در زمینه امنیت سایبری به همراه دارد. چندین استراتژی وجود دارد که میتواند به شما در دفاع از کسبوکارتان در برابر حملات روز صفر کمک کند:
- اطلاع از وضعیت امنیتی:
گفته شد حملات Zero-day همیشه به صورت عمومی افشا نمیشوند با این حال، گاهی اوقات اخبار مربوط به آسیبپذیریهایی که ممکن است مورد سوءاستفاده قرار گیرند، منتشر میشود. در این موارد، اگر به بهروزرسانیها و اخبار امنیتی که توسط فروشندگان نرمافزار خود منتشر میشود توجه کنید، میتوانید پیش از آنکه این آسیبپذیریها مورد بهرهبرداری قرار گیرند، اقدامات امنیتی مناسب را انجام دهید. این اقدامات میتواند شامل نصب بهروزرسانیها و پچهای امنیتی جدید، اعمال تنظیمات حفاظتی اضافی یا استفاده از ابزارهای امنیتی برای شناسایی و مقابله با تهدیدات باشد. توجه به این اخبار و اقدامات پیشگیرانه، میتواند نقش مهمی در کاهش خطرات ناشی از حملات Zero-day ایفا کند و از نفوذ به سیستمهای حساس شما جلوگیری نماید.
- بهروزرسانی سیستمها:
هنگامی که یک آسیبپذیری شناسایی میشود، مدت زمانی کوتاه پس از آن یک راهحل یا بهروزرسانی برای رفع آن منتشر میشود. با این حال، مسئولیت اصلی شما و تیمتان این است که اطمینان حاصل کنید نرمافزارهای استفاده شده در سیستمهای شما همیشه به روز و محافظتشده هستند. یکی از بهترین روشها برای انجام این کار، فعال کردن بهروزرسانیهای خودکار است. این اقدام باعث میشود که نرمافزار به طور منظم و بدون نیاز به مداخله دستی بهروزرسانی شود و آسیبپذیریهای امنیتی به محض شناسایی و اصلاح، برطرف گردند. علاوه بر این، از آنجایی که بسیاری از حملات سایبری از آسیبپذیریهای شناخته شده بهرهبرداری میکنند، اطمینان از بهروزرسانیهای سریع و منظم میتواند به شدت خطرات ناشی از حملات Zero-day و سایر تهدیدات امنیتی را کاهش دهد.
- استفاده از اقدامات امنیتی اضافی:
مطمئن شوید که از راهحلهای امنیتی پیشرفتهای استفاده میکنید که قادر به محافظت از شما در برابر حملات Zero-day هستند. با این حال، باید بدانید که این اقدامات ممکن است به تنهایی کافی نباشند تا از شما به طور کامل در برابر این نوع حملات محافظت کنند. حملات Zero-day به دلیل ناشناخته بودن آسیبپذیریها و زمانبر بودن فرآیند شناسایی و رفع آنها، یکی از چالشهای بزرگ در دنیای امنیت سایبری به شمار میروند. بنابراین، علاوه بر بهروزرسانیهای منظم و توجه به اخبار امنیتی، باید از راهحلهای جامع و چندلایه استفاده کنید که به طور خاص برای مقابله با این تهدیدات طراحی شدهاند.
- مدیریت آسیبپذیریها:
ارزیابیهای دقیق آسیبپذیری و تستهای نفوذ میتوانند به شرکتها کمک کنند تا آسیبپذیریهای روز صفر را قبل از آنکه هکرها آنها شناسایی و از آنها سوءاستفاده کنند، شناسایی و رفع نمایند.
- استفاده از معماری Zero Trust:
اگر یک هکر از آسیبپذیری روز صفر برای نفوذ به شبکه استفاده کند، معماری Zero Trust میتواند به محدود کردن خسارات کمک کند. با استفاده از احراز هویت مداوم و اعمال دسترسی حداقلی، این معماری از حرکات جانبی جلوگیری کرده و مانع دسترسی عوامل مخرب به منابع حساس میشود. Zero Trust با فرض اینکه هیچ کاربر یا دستگاهی از ابتدا قابل اعتماد نیست، امنیت شبکه را در هر لحظه بررسی و تقویت میکند.
مخاطبان حملات Zero-day چه کسانی هستند؟
یک حمله روز صفر میتواند آسیبپذیریها را در انواع مختلف سیستمها مورد سوءاستفاده قرار دهد، از جمله:
- سیستمعاملها
- مرورگرهای وب
- برنامههای آفیس
- اجزای Open source
- سختافزار و نرمافزار
- اینترنت اشیا (IoT)
بنابراین، گروه گستردهای از افرادی که ممکن است تحت تاثیر قرار گیرند وجود دارد:
- افرادی که از سیستمهای آسیبپذیر مانند مرورگرها یا سیستمعاملها استفاده میکنند. هکرها میتوانند از آسیبپذیریهای امنیتی برای نفوذ به دستگاهها و ساخت باتنتهای بزرگ بهرهبرداری کنند.
- افرادی که به دادههای ارزشمند تجاری، مانند مالکیت معنوی دسترسی دارند.
- کسبوکارها و سازمانها.
- نهادهای دولتی.
- اهداف سیاسی ویا تهدیدات امنیت ملی.
حملات روز صفر را میتوان به دو دسته هدفمند و غیرهدفمند تقسیم کرد:
- حملات روز صفر هدفمند: این حملات به طور خاص علیه اهداف با ارزش و مهم طراحی میشوند، مانند سازمانهای بزرگ، نهادهای دولتی یا افراد برجسته و تأثیرگذار. مهاجمان معمولاً از آسیبپذیریهای خاص برای دسترسی به اطلاعات حساس و انجام اقدامات خرابکارانه استفاده میکنند. این نوع حملات معمولاً پیچیدهتر و از پیش طراحیشده هستند تا آسیبهای جدیتری وارد کنند.
- حملات روز صفر غیرهدفمند: در این حملات، هدف خاصی وجود ندارد و مهاجمان تلاش میکنند تا سیستمهای آسیبپذیر عمومی را مورد هدف قرار دهند. این حملات معمولاً به کاربران عادی و سیستمهایی مانند مرورگرها یا سیستمعاملها آسیب میزنند. مهاجمان از آسیبپذیریهای شناخته شده استفاده میکنند تا به سیستمها نفوذ کرده و آنها را به باتنتها یا دیگر اهداف مخرب تبدیل کنند.
حتی زمانی که مهاجمان هدف خاصی را در نظر نداشته باشند، تعداد زیادی از افراد ممکن است به طور غیرمستقیم تحت تأثیر حملات روز صفر قرار گیرند. این حملات، معمولاً به عنوان خسارت جانبی به کاربران عادی وارد میشود. هدف از حملات غیرهدفمند جذب حداکثر تعداد کاربران است تا دادههای شخصی و اطلاعات حساس آنها به خطر بیفتد. بنابراین، کاربران غیرحرفهای نیز میتوانند قربانی این حملات شوند و اطلاعاتشان به راحتی به دست مهاجمان بیافتد.
چرا آسیبپذیریهای روز صفر خطرناک هستند؟
از آنجا که آسیبپذیریهای روز صفر ناشناخته و معمولاً شناسایی نشده هستند، تشخیص آنها میتواند چالشبرانگیز باشد. بدافزارهایی که از این آسیبپذیریها بهرهبرداری میکنند، ممکن است شامل اجرای کد از راه دور، باجافزار، سرقت اطلاعات حساس مانند اعتبارنامهها، حملات DoS و سایر تهدیدات جدی باشند. ماهیت پنهان و فریبکارانه این آسیبپذیریها میتواند باعث شود که سازمانها برای ماهها در معرض خطر قرار گیرند تا زمانی که آسیبپذیری شناسایی و مهار شود. این امر میتواند آسیبهای جبرانناپذیری به زیرساختها و اطلاعات حساس سازمانها وارد کند. آسیبپذیریها همیشه از پیکربندیهای نادرست یا آسیبپذیریهای شبکه شرکتی شروع نمیشوند. کسبوکارهایی که سیاست BYOD دارند، با اجازه دادن به کاربران برای آوردن دستگاههای خانگی به محیط کار، ریسک بیشتری به شبکه محلی خود اضافه میکنند. اگر دستگاه کاربر آسیب ببیند یا مورد تهدید قرار گیرد، ممکن است باعث آلوده شدن تمام شبکه شرکتی شود. هرچقدر یک آسیبپذیری بیشتر پنهان بماند، مهاجم زمان بیشتری برای سوءاستفاده از آن خواهد داشت. آسیبپذیریهای ناشناخته روز صفر ممکن است به مهاجم اجازه دهند دادههای زیادی را استخراج کنند. معمولاً دادهها به آرامی استخراج میشوند تا از شناسایی جلوگیری کنند و تنها پس از از دست رفتن میلیونها رکورد است که سازمان متوجه نفوذ میشود.