Расследование кибератак, чтобы выяснить, кто их совершил: государственные и связанные с государством группы или негосударственные группы!

Особая благодарность Мерем Вилдан Сарыкая за участие в этой серии статей. Также спасибо Ozkan Serttas и Hamdi Kavak PhD за помощь в преобразовании данных из JSON в табличный формат.

Часть 1 Введение

Частота и серьезность кибератак, спонсируемых государством, в последние годы растут. Эти атаки часто направлены на кражу конфиденциальной информации, разрушение критически важной инфраструктуры в рамках военных действий или распространение пропаганды. Последствия таких атак могут быть далеко идущими и длительными, затрагивая как предприятия, правительства, так и отдельных лиц. В некоторых случаях спонсируемые государством кибератаки могут привести к массовым отключениям электроэнергии, финансовым потерям, ущербу для репутации и поставить под угрозу национальную безопасность. По данным Белого дома, вредоносное ПО NotPetya в конечном итоге нанесло ущерб более чем на 10 миллиардов долларов.

После событий NotPetya некоторые страховщики отказали в возмещении связанных с этим расходов на том основании, что нападение было «военным актом», поскольку за ним стояло правительство. Поскольку многие страховые полисы исключают покрытие военных действий, киберстраховщики пришли к выводу, что такое же исключение должно применяться к актам кибервойны или спонсируемым государством кибератакам.[1]

Проблема

Merck & Co. понесла убытки в размере более 1,4 миллиарда долларов в результате кибератаки NotPetya и подала иск в соответствии со своими полисами страхования имущества от всех рисков. Однако страховщики отклонили иск, сославшись на пункт об исключении войны, который лишает покрытия убытков, вызванных враждебными или военными действиями правительства или суверенной державы. Но Верховный суд Нью-Джерси недавно вынес решение в пользу Merck & Co. в деле Merck & Co., Inc. против ACE American Insurance Co., заявив, что пункт об исключении применяется только к традиционным формам ведения войны, а не к кибербезопасности. -атаки. Это первое юридическое решение, рассматривающее применение исключения войны к кибератаке, и оно может создать прецедент для будущих дел. Тем не менее страховщики уже вносят изменения в свои полисы киберстрахования, чтобы исключить покрытие кибератак, спонсируемых государством. Lloyd’s of London выпустила четыре типовых исключения, которые конкретно исключают покрытие убытков или ущерба, причиненных «кибероперациями» государством или от его имени. [2]

Поскольку число кибератак продолжает расти, федеральное правительство обдумывает, не следует ли ему вмешаться, чтобы помочь частным страховым компаниям покрыть часть расходов, связанных с серьезными киберинцидентами.[3,4]

В отличие от традиционных киберугроз, спонсируемые государством атаки часто очень изощренны и хорошо финансируются, что затрудняет защиту от них. В результате многие компании по киберстрахованию исключают покрытие этих атак из своих полисов. Однако точное прогнозирование атак, спонсируемых государством, может принести большую пользу страховым компаниям. Понимая мотивы и методы, стоящие за этими атаками, страховые компании могут лучше оценивать риски, с которыми сталкиваются их клиенты, и разрабатывать более эффективные стратегии андеррайтинга и ценообразования. Атрибуция кибератаки имеет важное значение для страховых компаний и их клиентов. Увеличение количества атак, спонсируемых государством, привело к спорам о том, должны ли эти атаки покрываться страховыми полисами. Это может привести к:

– дорогие правила, если они включены или

- низкий спрос на страховку, если их исключить

Хотя доказать атрибуцию кибератаки непросто [5], эта статья направлена ​​на разработку модели машинного обучения с использованием общедоступных данных из базы данных сообщества VERIS (VCDB), чтобы предсказать, будет ли кибератака на конфиденциальность, целостность , а доступность спонсируется государством или нет.

Данные

Мы будем использовать набор данных VCDB для разработки модели. Прежде чем углубиться в данные, давайте кратко рассмотрим триаду: конфиденциальность, целостность и доступность.

Конфиденциальность гарантирует, что неавторизованные пользователи не смогут прочитать конфиденциальную информацию на компьютере или во время ее передачи по сети. Методы и инструменты шифрования обеспечивают конфиденциальность, что делает невозможным чтение данных или информации злоумышленниками.

Целостность гарантирует, что информация, хранящаяся на компьютере или передаваемая по сети, не может быть изменена или уничтожена злоумышленниками. Если будут внесены какие-либо изменения, получатель сможет их обнаружить.

Доступность гарантирует, что авторизованные пользователи имеют доступ к необходимой информации. Распределенные атаки типа «отказ в обслуживании» — это тип атаки, которая не позволяет законным пользователям получить доступ к серверу или файлу, ставя под угрозу доступность сетей или систем.

Мы начнем с подготовки данных для модели машинного обучения, чтобы предсказать, можно ли отнести эти атаки к национальным государствам.

Что такое кибератака, связанная с государством?

Кибератака считается связанной с государством только в том случае, если она была осуществлена ​​непосредственно государством или государство использовало киберпреступную организацию или частное лицо для проведения атаки в качестве доверенного лица. Остальные атаки классифицируются как кибератаки, не связанные с государством. Хотя, как утверждают эксперты [5], трудно доказать, что кибератака может быть приписана государству, все же есть некоторые признаки или индикаторы того, что кибератака может быть проведена или спонсирована национальным государством.

Как выглядит VCDB?

Домашнюю страницу источника данных можно найти по адресу ВЕРИС. Необработанные данные представлены в формате JSON и доступны в VCDB. Доступ к данным был получен и загружен в 2020 году.

Домашняя страница предоставляет информацию о ключах и значениях данных. Данные были преобразованы из JSON в табличный формат с помощью библиотек JSON и Pandas, но этого было недостаточно, чтобы убедиться, что данные были в правильном формате. Поэтому мы улучшили качество данных, поправили столбцы и поля, проверили некоторые инциденты. Хотя для улучшения качества данных необходимо проделать большую работу, поиск релевантной информации об инцидентах иногда может быть тупиковым, поскольку часто зависит от компаний, которые делятся подробностями о кибератаках.

Метаданные представлены в документе Word в репозитории GitHub, чтобы помочь вам понять столбцы. Также предоставляются первые 20 строк таблицы.

Исследовательский анализ данных

Поскольку в нескольких отчетах о кибербезопасности (например, Verizon DBIR, IBM Cost of Data Breach Report) анализируются затраты, модели атак, демографические данные жертв и т. д., мы не будем углубляться в эти детали. Мы коснемся базы на наиболее важных частях. Более подробную информацию можно найти в блокноте, представленном в репозитории GitHub.

Давайте начнем с описательной статистики числовых переменных, а затем продолжим рассмотрение количества атак, связанных с государством, по сравнению с атаками, не связанными с государством, по всему миру.

Отношение негосударственных атак к атакам, связанным с государством, составляет 11,48. Целевой класс сильно несбалансирован. Чтобы просмотреть другие цифры, пожалуйста, обратитесь к блокноту.

Обработка данных

Редкие категориальные значения трансформируются в «другое». Во-первых, мы решили сгруппировать редкие категориальные значения, которые состоят из нижних 5% распределения частоты. Для этого нам нужно найти пороговое значение для группировки редких категориальных значений в одну коллекцию. Таким образом, вычисляются пороговые значения для столбцов «отрасль», «разновидность_компрометации_1», «действие», «разновидность_действия», «вектор_действия», «группа_активов» и «разнообразие_активов_1». Здесь есть сценарий для этого.

#finding the thresholds to group rare categorical values that consist of the lower 5%
def revise(df, cols):
    for col in cols:
        frequencies = df[col].value_counts(normalize=True, ascending=True)
        threshold = frequencies[(frequencies.cumsum() > 0.05).idxmax()]
        df[col] = df[col].mask(df[col].map(df[col].value_counts(normalize=True)) < threshold, 'other')
    return df

Еще одно сопоставление было выполнено для полей «employee_count» и «confidence», чтобы уменьшить размерность, поскольку у нас так много категориальных значений. Кроме того, после преобразования категориальных значений в числовые пропущенные значения заполняются медианой для количества сотрудников и уверенности.

Отсутствующие значения для столбца «тип_данных» заполняются в зависимости от отрасли.

. Если отрасль — «здравоохранение», то тип данных — PHI,

· Если отрасль – "финансы и страхование", тип данных – PII.

· Если отрасль – "правительство", тип данных – ORG.

· Остальные отрасли заполнены персональными данными

Пропущенные значения в столбцах «отрасль», «конфиденциальность_состояние» и «данные_раскрытие» заполняются наиболее часто встречающимся значением.

Отсутствующие значения в столбцах «action», «action_variety», «action_vector», «asset_group» и «asset_variety_1» заполнены «неизвестно», потому что значения в этих столбцах, вероятно, связаны. Вменение требует знаний предметной области и взаимодействия между значениями для этих столбцов. Поэтому они наполнены «неизвестным».

Отсутствующие значения в столбцах «t_discovery_days», «t_containment_days», «t_exfilter_days» и «t_compromise_days» заполняются значениями -1.

Пропущенные значения в privacy_data_total заполняются средним значением.

Разработка модели

Мы используем инструмент IBM AutoAI для разработки нашей модели машинного обучения. IBM Auto AI — это инструмент автоматизированного машинного обучения (AutoML), предлагаемый IBM Watson Studio, облачной платформой для обработки данных и машинного обучения. Auto AI позволяет пользователям быстро и легко создавать и развертывать модели машинного обучения, не требуя обширных знаний в области программирования, обработки данных или машинного обучения. Чтобы узнать больше об IBM AutoAI, нажмите здесь!

Мы разделили 90% данных в качестве обучающих на 3 раза и 10% в качестве тестовых данных. У нас также были эксперименты, чтобы получить оптимизированные результаты для F1. Вы можете выбрать, какую метрику (точность, отзыв, F1) оптимизировать, чтобы IBM AutoAI обрабатывал и давал наилучшие результаты по выбранной метрике.

Целевой переменной является «state_nonstate», а в модель включены 20 переменных-предикторов, чтобы предсказать, является ли кибератака «связанной с государством» или «негосударственной». Столбцы, не включенные в модель, в файле метаданных выделены красным цветом.

Общие результаты эксперимента

В рамках эксперимента разработано 16 трубопроводов. Вот снимок конвейеров и оценки для F1, Precision и Recall.

Мы продолжим с показателями того, как оценивать модели классификации с несбалансированными наборами данных, в Части 2.В Части 3 мы проанализируем модели, разработанные IBM AutoAI.

Часть 2: Как оценивать классификаторы с несбалансированным набором данных

Часть 3: Итоги

Рекомендации

1. https://www.ft.com/content/aa147054-ec14-4a75-a183-bee345319948

2. https://www.reuters.com/legal/legalindustry/russia-ukraine-conflict-insurance-state-sponsored-cyberattacks-2022-03-25/

3. https://thehill.com/policy/cybersecurity/3678662-federal-government-considers-sharing-costs-for-catastrophic-cyber-incidents%EF%BF%BC/

4. https://hbr.org/2020/10/does-your-cyber-insurance-cover-a-state-sponsored-attack

5. https://carnegieendowment.org/2022/03/28/attribution-and-characterization-of-cyber-attacks-pub-86698