**حملهٔ صفر روزه ، آسيب پذيري روز صفر، زیرو دی** یا **حملهٔ روز صفر، day-0 (به انگلیسی: Zero-day vulnerability exploit)** یک حمله یا تهدید رایانه‌ای است که از یک آسیب‌پذیری در یک نرم‌افزار کاربردی که تا پیش از آن ناشناخته بوده‌است بهره‌جویی می‌کند. این بدان معناست که توسعه‌دهندگان برای رفع آسیب‌پذیری صفر روز فرصت داشته‌اند. پیش از آنکه توسعه‌دهندهٔ نرم‌افزار هدف از آسیب‌پذیری آگاهی یابد، اکسپلویت صفرروزه (نرم‌افزاری که از یک حفرهٔ امنیتی برای اعمال یک حمله استفاده می‌کند) توسط حمله‌کنندگان استفاده یا به اشتراک گذاشته می‌شود.

بردارهای حمله
-------------

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

پنجره آسیب‌پذیری
----------------

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

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

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

پوشش
----

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

* آنالیز: این مرحله بر روی آنالیز سطح حمله تمرکز می‌کند.
* تست: این مرحله بر روی تست دقیق بردارهای حمله شناخته شده تمرکز می‌کند.
* گزارش: این مرحله بر روی گزارش یافتن یک موضوع برای توسعه تمرکز می‌کند.
* کاهش آسیب‌پذیری: این مرحله بر رئی معیارهای محافظت تمرکز دارد.

محافظت
------

محافظت در برابر حملات صفر روزه عبارت است از توانایی فراهم کردن محافظت از حملات صفر روزه. حملات صفر روزه بعد از راه اندازی نیز می‌توانند کشف نشده باقی بمانند. به منظور محدود کردن اثربخشی حملات صفر روزه نظیر آسیب‌پذیری‌های تخریب حافظه (سرریز بافر) تکنیک‌های زیادی وجود دارد. این مکانیزم‌های محافظت در سیستم عامل‌های معاصر مانند مایکروسافت ویندوز ۸، ویندوز ۷، ویندوز ویستا، اپل مک‌اواس، سولاریس (سیستم‌عامل)، لینوکس و محیط‌های شبه‌یونیکس وجود دارد. مایکروسافت ویندوز ایکس پی سرویس پک ۲ شامل حفاظت‌های محدود در برابر آسیب‌پذیری تخریب حافظه عمومی است.
لایه‌های چندگانه حفاظت از service-agnostic را فراهم می‌کند و اولین خط دفاعی باید در هر لایه کشف شود. نمونه‌هایی از این موارد، پیاده‌سازی لیست‌های کنترل دسترسی جهت خدمات، محدود کردن دسترسی به شبکه از طریق دیواره آتش سرور محلی و پس از آن محافظت از کل یک شبکه با یک فایروال سخت‌افزاری است.
استفاده از port knocking به حفاظت مؤثر در برابر بهره‌برداری‌های حملات صفر روزه در خدمات شبکه ارائه می‌کند. به روز نگه داشتن نرم‌افزارهای کامپیوتری بسیار مهم است و کمک زیادی می‌کند.
کاربران نیاز به دقت در هنگام کلیک کردن بر روی لینک یا فایل‌های ضمیمه ایمیل و بازکردن تصاویر یا فایل‌های پی‌دی‌افدارند، حتی اگر فرستنده کسی است که آن را می‌شناسند. مهاجمان به طرق مختلف قربانیان خود را فریب می‌دهند و ویروس‌ها و برنامه‌های مخرب خود را بر روی سیستم قربانی اجرا می‌کنند. استفاده از سایت‌های با لایه امن سوکت (SSL)، که امنیت اطلاعات بین کاربر و سایت بازدید فراهم می‌شود بسیار مناسب هستند.

محتوا
-----

* بردار حمله
* پنجره آسیب‌پذیری
* پوشش
* محافظت
* تروآ (رایانه)
* سیستم جلوگیری نفوذ
* کنترل دسترسی
* متااسپلویت

منابع
-----

1. ↑  «آسیب‌پذیری روز صفر (zero-day) چیست؟».[*پیوند مرده*]
2. ↑  Zetter، Kim. «Hacker Lexicon: What Is a Zero Day?» (به انگلیسی). Wired. شاپا 1059-1028. دریافت‌شده در ۲۰۲۳-۰۶-۱۷.
3. ↑  «What is Zero-Day Vulnerability? | Glossary».
4. ↑  Editor، CSRC Content. «zero day attack - Glossary | CSRC». *csrc.nist.gov* (به انگلیسی). دریافت‌شده در ۲۰۲۳-۰۶-۱۸.
5. ↑  «What is a zero-day exploit?».
6. ↑  «What is a zero-day exploit?». *us.norton.com* (به انگلیسی). دریافت‌شده در ۲۰۲۳-۰۶-۱۸.

* Wikipedia contributors, "Zero-day attack," Wikipedia, The Free Encyclopedia,  (accessed March 6, 2013).