Моделювання загроз — це процес, за допомогою якого потенційні загрози, такі як структурна вразливість[en] або відсутність відповідних гарантій, можуть бути ідентифіковані та перераховані, а також можуть бути визначені пріоритети контрзаходів.[1] Мета моделювання загроз полягає в тому, щоб надати захисникам систематичний аналіз того, які засоби контролю або захисту необхідно включити, враховуючи природу системи, профіль ймовірного зловмисника, найбільш ймовірні вектори атаки та активи, найбільш бажані для зловмисника. Моделювання загроз відповідає на такі запитання, як «Де я найбільш вразливий до атак?», «Які загрози найбільш актуальні?» і «Що мені потрібно зробити, щоб захиститися від цих загроз?» .
Невдовзі після того, як спільні обчислення дебютували на початку 1960-х років, люди почали шукати способи використання вразливостей безпеки для особистої вигоди.[2] У результаті інженери та комп'ютерники незабаром почали розробляти концепції моделювання загроз для систем інформаційних технологій.
Ранні методи моделювання загроз на основі ІТ базувалися на концепції архітектурних шаблонів[3] вперше представленій Крістофером Александером[en] у 1977 році. У 1988 році Роберт Барнард розробив і успішно застосував перший профіль атакуючого для ІТ-системи.
У 1994 році Едвард Аморозо висунув концепцію «дерева загроз» у своїй книзі «Основи технології комп'ютерної безпеки».[4] Концепція дерева загроз була заснована на діаграмах дерева рішень. Дерева загроз графічно представляють, як можна використати потенційну загрозу ІТ-системі.
Незалежно подібну роботу провели NSA і DARPA над структурованим графічним представленням того, як можуть бути виконані конкретні атаки на ІТ-системи. Отримане представлення було названо «деревами атак». У 1998 році Брюс Шнайер опублікував свій аналіз кіберризиків, використовуючи дерева атак, у своїй статті під назвою «До методології розробки безпечних систем».[5] Стаття виявилася фундаментальним внеском в еволюцію моделювання загроз для ІТ-систем. В аналізі Шнайєра мета зловмисника представлена як «кореневий вузол», а потенційні засоби досягнення мети представлені як «листові вузли». Використання дерева атак таким чином дозволило фахівцям з кібербезпеки систематично розглядати численні вектори атак проти будь-якої визначеної цілі.
У 1999 році фахівці з кібербезпеки Microsoft Лорен Конфелдер[en] і Преріт Гарг розробили модель для розгляду атак, пов'язаних із середовищем розробки Microsoft Windows. (STRIDE[en][1] є акровіршем для: Підробка ідентифікаційної інформації (англ. Spoofing identity), Втручання в дані (англ. Tampering with data), Відмова (англ. Repudiation), Розголошення інформації (англ. Information disclosure), Відмова в обслуговуванні (англ. Denial of service), Підвищення привілеїв (англ. Elevation of privilege)) Отримана мнемоніка допомагає фахівцям із безпеки систематично визначати, як потенційний зловмисник може використати будь-яку загрозу, включену в STRIDE.
У 2003 році методологія моделювання загроз OCTAVE[6] (Operationally Critical Threat, Asset, and Vulnerability Evaluation), орієнтована на операції, була представлена з акцентом на організаційному управлінні ризиками.
У 2004 році Френк Свідерскі та Віндоу Снайдер[en] написали «Моделювання загроз» у видавництві Microsoft. У ньому вони розробили концепцію використання моделей загроз для створення безпечних програм.
У 2014 році Райан Стіліонс висловив ідею про те, що кіберзагрози повинні бути виражені різними семантичними рівнями, і запропонував модель DML (Detection Maturity Level).[7] Атака — це втілення сценарію загрози, спричиненого конкретним зловмисником із певною метою та стратегією досягнення цієї мети. Ціль і стратегія представляють найвищі семантичні рівні моделі DML. Далі слідують TTP (тактика, техніка та процедури), які представляють проміжні семантичні рівні. Найнижчими семантичними рівнями моделі DML є інструменти, які використовує зловмисник, хост і спостережувані мережеві артефакти, такі як пакети та корисні дані, і, нарешті, атомарні індикатори, такі як IP-адреси на найнижчому семантичному рівні. Поточні інструменти SIEM зазвичай надають індикатори лише на найнижчих семантичних рівнях. Тому існує потреба в розробці інструментів SIEM, які можуть надавати індикатори загроз на вищих семантичних рівнях.[8]
Концептуально практика моделювання загроз витікає з методології. Для впровадження доступні численні методології моделювання загроз. Як правило, моделювання загроз впроваджується за допомогою одного з п'яти підходів незалежно: орієнтованого на активи, орієнтованого на зловмисника, орієнтованого на програмне забезпечення, орієнтованого на цінність і зацікавлених сторін, а також гібридного. Виходячи з обсягу опублікованого онлайн-контенту, методології, розглянуті нижче, є найбільш відомими.
STRIDE, Patterns and Practices і Asset/entry point були одними з підходів моделювання загроз, розроблених і опублікованих Microsoft. Посилання на методологію Microsoft зазвичай означають STRIDE та діаграми потоку даних.[9]
Процес симуляції атак і аналізу загроз (англ. Process for Attack Simulation and Threat Analysis, PASTA) — це семиетапна ризик-орієнтована методологія.[10] Він забезпечує семиетапний процес для узгодження бізнес-цілей і технічних вимог, враховуючи проблеми відповідності та бізнес-аналіз. Метою методу є забезпечення динамічного процесу ідентифікації загроз, підрахунку та оцінки. Після того, як модель загроз завершена, експерти з питань безпеки розробляють детальний аналіз виявлених загроз. Нарешті, можна перерахувати відповідні засоби контролю безпеки. Ця методологія призначена для надання орієнтованого на зловмисника погляду програми та інфраструктури, на основі якого захисники можуть розробити стратегію пом'якшення, орієнтовану на активи.
У центрі уваги методології Trike[11] — використання моделей загроз як інструменту управління ризиками. У цій структурі моделі загроз використовуються для задоволення процесу аудиту безпеки. Моделі загроз базуються на «моделі вимог». Модель вимог встановлює визначений зацікавленою стороною «прийнятний» рівень ризику для кожного класу активів. Аналіз моделі вимог дає модель загроз, на основі якої загрози перераховуються та призначаються значення ризику. Завершена модель загрози використовується для побудови моделі ризику на основі активів, ролей, дій і розрахованого ризику.
Методологія Visual, Agile and Simple Threat (VAST)[12] базується на ThreatModeler, комерційній автоматизованій платформі моделювання загроз. Для VAST потрібно створити два типи моделей: моделі загроз застосунків і моделі операційних загроз. Моделі загроз застосунків використовують діаграми процесів, що представляють архітектурну точку зору. Операційні моделі загроз створюються з точки зору зловмисника на основі DFD. Цей підхід дозволяє інтегрувати VAST у життєві цикли розробки організації та DevOps.[13]
Дослідники створили цей метод, щоб поєднати позитивні елементи різних методологій.[14][15][16] Ця методологія поєднує в собі різні методології, зокрема SQUARE[17] і Security Cards[18] і Personae Non Gratae.[19]
Усі процеси моделювання загроз, пов'язані з ІТ, починаються зі створення візуального представлення програми та/або інфраструктури, що аналізується. Додаток/інфраструктура розбивається на різні елементи, щоб допомогти в аналізі. Після завершення візуальне представлення використовується для ідентифікації та перерахування потенційних загроз. Подальший аналіз моделі щодо ризиків, пов'язаних із ідентифікованими загрозами, встановлення пріоритетів загроз та перелік відповідних заходів контролю залежить від методологічної основи процесу моделі загроз, що використовується. Ідентифікація та перерахування загроз (або цілей пом'якшення) можуть бути здійснені або орієнтованим на атаку, або орієнтованим на активи способом. Перший зосереджується на типах можливих атак, які потрібно пом'якшити, тоді як другий зосереджується на активах, які потрібно захистити.
Методологія Microsoft, PASTA та Trike розробляють візуальне представлення інфраструктури програми за допомогою діаграм потоків даних (DFD). DFD були розроблені в 1970-х роках як інструмент для системних інженерів, щоб повідомляти на високому рівні, як програма спричинила потік даних, їх зберігання та маніпулювання інфраструктурою, на якій працює програма. Традиційно DFD використовують лише чотири унікальні символи: потоки даних, сховища даних, процеси та інтерактори. На початку 2000-х років було додано додатковий символ, межі довіри, щоб дозволити використовувати DFD для моделювання загроз.
Після того, як система прикладної інфраструктури розкладається на п'ять елементів, експерти з безпеки розглядають кожну ідентифіковану точку входу загрози проти всіх відомих категорій загроз. Після виявлення потенційних загроз можна перерахувати пом'якшувальні заходи безпеки або виконати додатковий аналіз.
Моделювання загроз застосовується не лише до ІТ, але й до інших областей, таких як транспортні засоби,[27][28]автоматизація будівель[en] та автоматизація дому[en].[29] У цьому контексті моделюються загрози безпеці та конфіденційності, як-от інформація про профілі пересування мешканців, робочий час і стан здоров'я, а також фізичні або мережеві атаки. Останні могли б використовувати все більше доступних функцій розумних будівель, таких як датчики (наприклад, щоб стежити за мешканцями) і приводи (наприклад, щоб відчинити двері).[29]
Маніфест моделювання загроз — це документ, опублікований у 2022 році органами, що займаються моделюванням загроз, щоб чітко визначити основні цінності та принципи, які повинен знати та дотримуватися кожен розробник моделей загроз.[30]