مدل سازی تهدید چیست؟
مدلسازی تهدید شامل شناسایی و انتقال اطلاعات در مورد تهدیداتی که ممکن است بر یک سیستم یا شبکه خاص تأثیر بگذارد ، می باشد. مدل سازی تهدیدات امنیتی ، یک تیم فناوری اطلاعات را قادر می سازد تا ماهیت تهدیدات و همچنین چگونگی تأثیر آنها بر شبکه را درک کنند. علاوه بر این، مدلسازی تهدید میتواند برای تحلیل خطراتی که تهدیدها برای برنامهها ایجاد میکنند، با در نظر گرفتن آسیبپذیریهای بالقوه آنها مورد استفاده قرار گیرد.
مدلسازی تهدید به سازمانها کمک میکند تا در برابر سناریوهایی که آنها را در موقعیتی در معرض خطر قرار میدهند، آماده شوند. سناریوهای رایج عبارتند از زمانی که یک سازمان قربانی یک حمله مخرب مانند فیشینگ، باج افزار یا حمله MitM می شود.
جدا از محافظت از شبکهها و برنامهها، مدلسازی تهدید میتواند به ایمنسازی دستگاههای اینترنت اشیا (IoT) و همچنین فرآیندهایی که کسبوکار به آنها وابسته است کمک کند. مدل سازی تهدید از شرکت در برابر انواع بردارهای تهدید محافظت می کند.
روش مدل سازی تهدید بسته به سیستم مورد بررسی متفاوت است. با این حال، تقریباً هر فرآیند کسب و کار وابسته به فناوری می تواند به نحوی از آن بهره مند شود. با مدلسازی تهدید، میتوان دامنه تهدیدات پیش روی یک فرآیند یا سیستم خاص را محدود کرد و سپس بررسی کرد. این امر سردرگمی در مورد تهدیدها و همچنین نحوه دفاع در برابر آنها را از بین می برد. علاوه بر این، اطلاعاتی را برای دفاع از سیستم به تیمهای فناوری اطلاعات میدهد .
فرآیند مدلسازی تهدید (Threat Modeling) روشی برای بهینهسازی امنیت سیستم است، که از طریقِ شناساییِ اهداف، روشهای نفوذ و نقاط آسیبپذیر، ممکنپذیر میشود. مراحل مدلسازی تهدید معمولا شامل موارد زیر است:
تشریح نگرانی شما در رابطه با یک سیستم، برنامه یا فرآیند خاص
تهیه فهرستی که مفروضات مربوط به تهدید را مشخص می کند، که باید با تغییر شرایط تأیید شود
فهرست مشخصی از تهدیدات
لیستی از ویرایشها و بازنگری ها
تعیین راهی معتبر برای اطمینان از موفقیت روش های مقابله با تهدیدات و تغییرات چشم انداز تهدید
فرآیند مدل سازی تهدید
اگرچه انواع تهدیدات مدلسازی شده همواره با هر موقعیتی تغییر میکنند، مراحل اساسی فرآیند ثابت میمانند :
- ساختن یک طراحی، مدل شبکه یا سیستم دفاعی کاربردی که ایمن باشد
- اطمینان از اختصاص دادن کارآمد منابع برای جلوگیری از هدررفتن بی مورد سرمایه و یا متخصصین
- اولویت قرار دادن امنیت حتی بر سودآوری کوتاه مدت، درک این موضوع که با توجه به سیستم ایمن تر، سود در بلندمدت افزایش می یابد.
- آگاه نگه داشتن ذینفعان در مورد چگونگی توسعه سیستم
- مشخص کردن تهدیداتی که سیستم با آن مواجه است
- شناسایی الزامات انطباق با توجه به سیستم یا برنامه مورد رسیدگی
- اطمینان از انطباق اقدامات انجام شده با مقررات انطباق
- تعیین کنترل های لازم برای کاهش تهدید قبل، حین و بعد از برخورد
- ایجاد این کنترلها و اجرای آنها به شیوهای شفاف و روشن برای همه ذینفعان
- ارزیابی ریسک های مرتبط با سیستم مدیریت تهدید
- مستندسازی تهدیداتی که بر سیستم تأثیر می گذارد
- مستندسازی تلاشهای کاهش اعمال شده برای مدیریت هر تهدید
- اطمینان از اینکه اهداف کسب و کار تحت تأثیر یک عامل تهدید یا رویداد منفی قرار نمی گیرند
- تعیین روشهایی برای آزمایش سیستم برای اطمینان از کارایی آن با توجه به تهدیداتی که برای محافظت از سازمان طراحی شده است
تکنیک های مدل سازی تهدید
یک مرحله کلیدی در فرآیند مدلسازی تهدید شامل بررسی یک عنصر زیرساخت یا برنامهای است که ممکن است با تهدید مواجه شود. بررسی شامل اطمینان از نحوه عملکرد برنامه و نحوه ارتباط آن با نهادهای درون سیستم و همچنین مواردی است که می توانند مشکل ساز شوند .
برای انجام این کار، رفتار برنامه یا سیستم باید در انواع موقعیت های مختلف بررسی شود. مانند موقعیتهایی که در آن کاربران با سطوح دسترسی مختلف به یکدیگر متصل میشوند، نحوه رفتار سیستم در حین اتصال به معماریهای مختلف شبکه، یا نحوه پردازش انواع مختلف دادهها توسط سیستم بررسی می شود. در حین بررسی رفتار، باید نقاط ورودی و آسیب پذیری بالقوه و نحوه تغییر این رفتارها با توجه به تعاملات مختلف را مشخص کنید.
به عنوان مثال، یک دستگاه IoT ممکن است ، در حالی که به یک شبکه گسترده امن (WAN) متصل است، رفتار ایمن از خود نشان دهد .زیرا تیم DevOps در حال طراحی نرم افزاری است که آن را کنترل می کند. با این حال، هنگام مدلسازی تهدید این دستگاه، رفتار آن ممکن است هنگام اتصال به اینترنت عمومی، آن را در معرض آسیبپذیریها قرار دهد. بهعلاوه، اگر ترافیک آن باید با استفاده از پردازش مبتنی بر ابر مدیریت شود، ممکن است مشکلاتی با تأخیر یا تخریب بستهها وجود داشته باشد که میتواند مشکلات بالقوه دیگری و حتی تهدیدات جدیدی را ایجاد کند که تیم آنها را در نظر نگرفته باشد.
بنابراین، نحوه رفتار برنامهای که دستگاه اینترنت اشیا را کنترل میکند باید در انواع معماریهای شبکه مورد بررسی قرار گیرد تا درک کاملی از تهدیدات بالقوه به دست آید.
برای اطمینان از کنترل تمام آیتم ها، تیم فناوری اطلاعات باید از نموداری برای مشخص کردن جریان داده ها استفاده کنند. نمودارها یک نمایش بصری از نحوه حرکت داده ها به داخل، در طول و خارج از یک سیستم یا برنامه ارائه می دهد. همچنین نشان می دهد که چگونه داده ها در مراحل مختلف پردازش یا ذخیره سازی تغییر می کنند. علاوه بر این، نمودار جریان محل ذخیره داده ها را هنگام حرکت در سیستم نشان می دهد.
نمودار جریان داده نقطه ای را که در آن داده ها باید از دستگاه IoT به شبکه عبور کند، مشخص می کند و به تیم اجازه می دهد تا یک مرز اعتماد در این مکان ایجاد کند. سپس به تیمهای امنیتی سیگنال میدهد تا از شبکه در برابر کدهای مخربی که یک هکر میتواند در ارتباط با دستگاه اینترنت اشیا استفاده کند، محافظت کنند.
چارچوب ها و روش های مدل سازی تهدید
مدلسازی حملههای سایبری با روش STRIDE
STRIDE مخفف جعل (spoofing) ، دستکاری (tampering) ، انکار (repudiation) ، افشای اطلاعاتی (informative disclosure) ، انکار سرویس (DoS) و افزایش امتیاز (elevation of privilege) است.
- جعل زمانی است که یک کامپیوتر یا شخص وانمود می کند چیزی است که نیست.
- دستکاری به نقض یکپارچگی داده ها اشاره دارد.
- انکار در فرآیند پیوند دادن یک عمل به شخصی که آن را انجام داده است، تداخل دارد .
- افشای اطلاعات شامل ارائه اطلاعات حساس است ،
- DoS استفاده از یک منبع را برای کاربران قانونی غیرممکن می کند .
- Elevation of Privilege دسترسی غیرمجاز به یک سیستم یا برنامه را برای شخصی که قبلاً سطح دسترسی دارد فراهم می کند.
مدلسازی حملههای سایبری با روش PASTA
کلمه PASTA مخفف از Process for Attack Simulation and Threat Analysis گرفته شده است. مدلسازی پاستا شامل هفت مرحله است:
- تعریف اهداف شما
- تعریف محدوده فنی پروژه
- تحلیل و بررسی
- تحلیل تهدیدات
- تجزیه و تحلیل نقاط ضعف و آسیب پذیری
- مدل سازی حملات
- تجزیه و تحلیل ریسک و تأثیر آن بر کسب و کار
مدل سازی تهدیدات با روش VAST
VAST به مدل سازی Visual بصری ، Agile سریع و Simple Threat تهدید ساده اشاره دارد. VAST یک عنصر اساسی از یک پلت فرم مدل سازی تهدید به نام ThreatModeler است. VAST در جریان های کاری طراحی شده با استفاده از اصول DevOps ادغام می شود.
مدل سازی تهدیدات با روش Trike
Trike یک چارچوب متن باز است که به جای تلاش برای تکرار نحوه حمله یک بازیگر به سیستم، به دنبال دفاع از یک سیستم است. با استفاده از چارچوب Trike، کاربران مدلی از برنامه یا سیستمی که از آن دفاع می کنند، می سازند. سپس از مخفف CRUD استفاده می شود :
- تولید داده Create data
- خواندن داده Read data
- به روزرسانی داده Update data
- پاکسازی داده Delete data
اطلاعات بالا با کمک نمودار جریان داده مورد مطالعه قرار می گیرد. تهدیدهای مورد بررسی شامل افزایش امتیازات یا محرومیت از خدمات است.
مدل سازی تهدیدات با روش OCTAVE
OCTAVE به ارزیابی دارایی و آسیب پذیری تهدید حیاتی عملیاتی اشاره دارد. این مدل توسط دانشگاه کارنگی ملون طراحی شده است. OCTAVE به سه فاز مختلف نیاز دارد:
- ایجاد پروفایل های تهدید بر اساس دارایی های خاص
- شناسایی آسیبپذیریها در زیرساختها
- توسعه استراتژی ها و برنامه های امنیتی
مدل سازی تهدیدات با روش NIST
NIST به موسسه ملی استاندارد و فناوری اشاره دارد که سیستم مدلسازی تهدید خود را با هدف تمرکز بر داده ها توسعه داده است. NIST به چهار مرحله نیاز دارد:
- شناسایی سیستم و تشریح نحوه عملکرد آن، از جمله نحوه مدیریت داده های درون یا وابسته به آن
- تعیین بردارهای حمله قابل اجرا که مدل به آنها رسیدگی خواهد کرد
- کشف کنترل های امنیتی لازم برای کاهش حملات
- تجزیه و تحلیل مدل ایجاد شده برای ارزیابی اثربخشی آن