ویرگول
ورودثبت نام
مجید موسویان نژاد صادقی
مجید موسویان نژاد صادقی
مجید موسویان نژاد صادقی
مجید موسویان نژاد صادقی
خواندن ۱ دقیقه·۱ ماه پیش

Defensive Bug (باگ دفاعی)

اصطلاح "Defensive Bug" (باگ دفاعی) در زمینه امنیت نرم‌افزار معمولاً به مفهومی به نام «Chaff Bugs» (باگ‌های فریبنده یا کاه) اشاره دارد. این یک تکنیک دفاعی غیرمتعارف است که در آن به‌جای حذف باگ‌ها، تعداد زیادی باگ غیرقابل‌بهره‌برداری (non-exploitable) به‌صورت عمدی در کد برنامه تزریق می‌شود تا مهاجمان را گیج و منابعشان را هدر دهد.

ایده اصلی پشت Chaff Bugs

منطق این تکنیک بر اساس عدم تقارن بین مهاجم و مدافع است:

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

* مدافع باید همه آسیب‌پذیری‌ها را مسدود کند.

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

نمونه‌ای از پیاده‌سازی واقعی

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

تفاوت با "Defensive Programming"

نباید Defensive Bug را با Defensive Programming (برنامه‌نویسی تدافعی) اشتباه گرفت. برنامه‌نویسی تدافعی یک رویکرد پیشگیرانه است که در آن کد به‌گونه‌ای نوشته می‌شود که در برابر ورودی‌های نامعتبر و شرایط غیرمنتظره مقاوم باشد (مثلاً با اعتبارسنجی ورودی‌ها و بررسی شرایط مرزی). در مقابل، Chaff Bugs یک تکنیک واکنشی و فریبنده در لایه امنیت است که فرض را بر وجود باگ می‌گذارد و سعی می‌کند هزینه حمله را برای مهاجم افزایش دهد.

اگر منتا دقیق‌تر راهنمایی کنم.

باگهک و امنیتامنیت سایبریمهندسی معکوس
۲
۰
مجید موسویان نژاد صادقی
مجید موسویان نژاد صادقی
شاید از این پست‌ها خوشتان بیاید