مهمترین بخش امنیت یک سیستم، تقویت و پیشگیری پیش از حمله است، چرا که غالباً دفاع پس از حمله نمیتواند چندان ثمربخش و مؤثر واقع شود.
آنچه در دنیای امنیت مهم است، توجه به «چگونگی»هاست، نه صرفاً فقط «چه کسانی»، و به زبانِ سادهتر، مهمتر این است چگونه یک سرقتِ سایبری
خدمات شبکه اتفاق میافتد، نه آنکه چه کسانی آن را انجام میدهند.
در مدلسازیِ تهدید نیز تمرکزِ اصلی بر روی «چگونگی» وقوع و به نتیجه رسیدنِ حمله است. در واقع، مدلسازی تهدید، روشی برای بهینهسازی امنیت سیستم است، که
از طریقِ شناساییِ اهداف، روشهای نفوذ و نقاطِ آسیبپذیر ممکنپذیر میشود.
در مدلسازی تهدید، اولین و مهمترین گام مشخص کردن همهی آن چیزهایی است که قصدِ حفاظت از آنها را داریم. در اینجا باید به این نکته نیز توجه کرد که مشخص کردن ارزشِ
آنچه قصد حفاظت از آن را داریم صرفاً یک مسئلهی یک طرفه نیست، به این معنا که در شناساییِ داراییهای ارشمندِ سیستم، تنها نباید به آنچه از دید خود (به عنوانِ توسعه
دهنده و یا مصرفکننده) ارزشمند است توجه کنیم، بلکه باید آنچه برای یک میکروتیک مهاجمِ احتمالی نیز ارزشمند است را شناسایی و ارزیابی کنیم
در گام بعد، نیاز است تا گروههای حمله کنندهی احتمالی به سیستم را شناسایی و ارزیابی کرد. این گروهها باید شاملِ خودیها و غریبهها و همچنین دربرگیرندهی اشتباهاتِ
غیرعمدی (مانند ضعفهای عملکردِ سیستم) و حملههای مخرب باشد.
سطح حمله
سطح حمله (Attack Surface) مجموعهای از نقاطِ ضعفی است که نفوذ از طریقِ آنها برای مهاجمان امکانپذیر است. در حقیقت سطحِ راه اندازی شبکه وایرلس حمله همان نقاطِ آسیبپذیریِ سیستم است
که مهاجم قادر خواهد بود از این طریق آنها به سیستم نفوذ کند و اطلاعات را خارج کند.
در مدلسازیِ تهدید، ارزیابی و تحلیلِ سطحِ حمله اهمیت بالایی دارد، چرا که با این روش، توسعهدهندگان و مسئولانِ امنیت میتوانند از مناطقِ خطر و همینطور از شدتِ خطر اطلاع
پیدا کنند، و بخشهای بازِ سیستم برای مهاجمان را شناسایی کنند.
به طورِ کلی تحلیلِ سطح حمله در ۳ مورد کلی به توسعهدهندگان کمک شایانی میکند:
شناساییِ بخشها و عملکردهای آسیبپذیر سیستم.
شناسایی مناطقِ در معرضِ خطر که نیازمندِ دفاعِ عمیقتر هستند، و به طورِ کلی شناساییِ مناطقی که نیازمندِ دفاع در برابر مهاجمین احتمالی هستند.
شناساییِ زمانی که سطحِ حمله تغییر داده شده است، و نیاز به ارزیابی تهدید میباشند.
سطح حمله بسته به نوع سیستم
نصب شبکه و عملکرد آن نیز میتواند متفاوت باشد، همانطور که دشمنان احتمالی آن هم متفاوت هستند.
اما به طور جامع سطحِ حمله را میتوان در ۴ بخشِ زیر دستهبندی کرد:
مجموعهی مسیرهای ورودی و خروجی برای اطلاعات و دستورها.
کدهایی که از این مسیرهای ورودی و خروجی محافظت میکنند، از جمله؛ ارتباطات منابع و احرازهویت، اجازهنامهها و اعتبار سنجی دادهها.
تمامیِ اطلاعات با ارزش سیستم مانند؛ کلیدها، مالکیت معنوی، اطلاعات کسب و کار و اطلاعات شخصی.
کدهایی که از این اطلاعات محافظت میکنند، از جمله؛ رمزنگاریها، دسترسی حسابرسی و کنترلِ عملیات امنیت.
برای مثال، اگر در یک سیستم، تنها نگرانی، مهاجمان از راه دور باشند، و سیستم تنها از طریق اینترنت
پشتیبانی شبکه با دنیای خارج ارتباط داشته باشد، سطحِ حمله بخشی از سیستم است
که با بخشهایی دیگر در اینترنت تعامل دارد، و همینطور بخشی که ورودیهای اینترنت را قبول میکند نیز میتواند به عنوان سطح حمله نیز تعریف شود. در نتیجه، یک دیوار آتشین
در این سیستم میتواند با فیلتر کردن بخشی از ترافیک شبکه سطح حمله را محدودتر کند.
نمودار حمله
نمودار حمله (Attack Tree) مدلسازی گرافیکیِ حمله علیه سیستم است، که در واقع هدفِ حمله و مراحل نفوذ و حمله را نشان میدهد.
با ترسیمِ نمودارِ حمله میتوان چگونگیِ یک حمله را از ابتدای نفوذ به سیستم تا به اتمام رساندن مأموریتِ خرابکارانه را ردیابی و بررسی کرد.
در ترسیم نمودار حمله ابتدا نیاز است تا هرگونه هدفِ ممکن را شناسایی کرد، و در گام بعد هرگونه حمله علیه هدفها را متصور شد، و آنها را به بدنه درخت اضافه کرد.
برای مثال، نمودار حملهی یک ویروسِ کامپیوتری را تصور کنید. هدف ویروس در واقع آلوده کردن مرکزسیستم است، و برای رسیدن به این هدف ابتدا باید از طریق یک فایل آلوده به
سیستم نفوذ کند، و در مرحلهی بعدی اجرای فایل توسط کاربران و یا مدیر سیستم است، و در نهایت پس از اجرا شدن فایل آلوده سیستم نیز آلوده خواهد شد، که همان هدف نهایی حمله است
آنچه در رسم نمودارِ حمله مهم است، در نظر گرفتن تمامی راههای محتمل برای نفوذ به سیستم و رسیدن به هدف است. شاید گاهی اوقات راههای نفوذ و حتی اهداف نهایی بسیار غیر قابلِ تصور
به نظر برسند، اما در واقع، هدف از ترسیم نمودار حمله و تحلیل آن، شناسایی تمامیِ راههای ممکن، و حتی غیرممکن است.
با انجام دقیق این کار میتوان حملههای احتمالی را پیش از وقوع خنثی کرد، و هرگونه شانس مهاجم برای نفوذ به سیستم را از باز پس گرفت
همانطور که پیش از این نیز اشاره شد، هدفِ اصلی از مدلسازیِ امنیت، شناساییِ نقاطِ آسیبپذیر، دشمنان، و تهدیدهای سیستم
کابل کشی شبکه و ارزیابی شدت خطری است که سیستم با آن روبروست.
آنچه توسعهدهندگان و مسئولانِ امنیت از این مدلسازیها نصب شبکه بدست میآورند، مشخصاتِ و روشهای حملههای احتمالی است، که در صورتِ شناسایی و تقویت به موقع، سطحِ حمله و شانسِ
موفقیتِ مهاجمان را به مراتب محدودتر میکند
باید در نظر داشت، که مدلسازیِ امنیت، در مرحلهی نخست اقدامی پیشگیرانه است، و در مرحلهی بعد، مقدمهایست برای پایهریزیِ تدابیرِ مناسبِ دفاعی در برابرِ حملاتِ احتمالی
مهمترین بخشِ امنیتِ یک سیستم، تقویت و پیشگیری پیش از حمله است، چرا که غالباً دفاع پس از حمله نمیتواند چندان ثمربخش و مؤثر واقع شود