Библиотека для парсинга данных MITRE ATT&CK в объекты C#, включая поддержку всех основных типов объектов и опциональных компонентов.
- Возможности
- Установка
- Примеры использования
- Документация
- Лицензии
- Правовая информация
- Вклад в проект
-
Полноценная десериализация STIX 2.1 данных MITRE ATT&CK
-
Автоматическое определение типов объектов через поле
type -
Поддержка всех MITRE-расширений (
x_mitre_*поля) -
Обработка вложенных структур:
- Ссылки на источники (
external_references) - Фазы Kill Chain (
kill_chain_phases) - Метки объектов (
object_marking_refs)
- Ссылки на источники (
-
Поддержка всех типов объектов MITRE:
- Матрицы (
x-mitre-matrix) - Коллекции (
x-mitre-collection) - Тактики (
x-mitre-tactic) - Техники (
attack-pattern) - Группы (
intrusion-set) - Инструменты (
tool) - Кампании (
campaign) - Меры защиты (
course-of-action) - Идентификаторы (
identity) - Вредоносное ПО (
malware) - Связи (
relationship) - Компоненты данных (
x-mitre-data-component) - Источники данных (
x-mitre-data-source) - Ассеты (
x-mitre-asset)
- Матрицы (
Примечание
Для опциональных типов (например,x-mitre-asset) перед использованием рекомендуется проверятьnull.
dotnet add package MitreAttackParsergit clone https://github.com/Security-Experts-Community/dotnet-mitre-attack-parser.git
cd dotnet-mitre-attack-parser
dotnet buildusing MitreAttackParser;
// Создание репозитория с настройками по умолчанию
var repository = new AttackRepository();
// Загрузка всех коллекций (Enterprise, ICS, Mobile)
if (await repository.CreateAsync())
{
Console.WriteLine("Данные успешно загружены");
}Примечание
Перед обращениям к объектамAttackRepositoryрекомендуется дождаться окончания создания репозитория при помощи командыWait(), или убедившись, что командаCreateAsync()вернула значениеtrue.
// Получение всех объектов коллекции Enterprise
var enterpriseData = repository.EnterpriseCollection;// Получение информации о техники по её ID
var technique = repository.EnterpriseCollection.Techniques.FirstOrDefault(t => t.Id == "attack-pattern--00d0b012-8a03-410e-95de-5826bf542de6");
if (technique != null)
{
Console.WriteLine($"Техника: {technique.Name}");
Console.WriteLine($"Описание: {technique.Description}");
}Подробная информация о классах и API доступна в репозитории проекта.
Этот проект распространяется под лицензией MIT. Подробности в репозитории проекта.
- MITRE ATT&CK® - MIT License
- TAXII Server API - Apache 2.0 License
Этот проект является независимой реализацией для работы с данными:
- MITRE ATT&CK® (MIT)
- ATT&CK Workbench TAXII Server (Apache 2.0)
⚠ Отказ от ответственности:
Этот проект использует данные из MITRE ATT&CK®, но не является официальным продуктом MITRE.
ATT&CK® является зарегистрированной торговой маркой The MITRE Corporation.
Официальные данные ATT&CK доступны на MITRE ATT&CK®.
MITRE® и ATT&CK® являются зарегистрированными товарными знаками The MITRE Corporation.
Мы приветствуем вклад в развитие проекта! Пожалуйста, ознакомьтесь с руководством по внесению вклада для получения информации о том, как внести свой вклад.