Общие сведения о схемах и операторах
Схемы графов корпоративной уязвимости в Управление рисками Microsoft Security предоставляют сведения о поверхности атаки, чтобы помочь вам понять, как потенциальные угрозы могут достигать и компрометировать ценные ресурсы. В этой статье приведены таблицы и операторы схемы графа экспозиции.
Таблицы схем
График экспозиции основан на следующих таблицах:
- ExposureGraphNodes
- ExposureGraphEdges
ExposureGraphNodes
ExposureGraphNodes содержит организационные сущности и их свойства. К ним относятся такие сущности, как устройства, удостоверения, группы пользователей и облачные ресурсы, такие как виртуальные машины, хранилище и контейнеры. Каждый узел соответствует отдельной сущности и инкапсулирует сведения о ее характеристиках, атрибутах и аналитике, связанной с безопасностью, в организационной структуре.
Ниже приведены имена, типы и описания столбцов ExposureGraphNodes .
-
NodeId
(string
) — уникальный идентификатор узла. Пример: "650d6aa0-10a5-587e-52f4-280bfc014a08" -
NodeLabel
(string
)— метка узла. Примеры: "microsoft.compute/virtualmachines", "elasticloadbalancing.loadbalancer" -
NodeName
(string
)— отображаемое имя узла. Пример: "nlb-test" (имя сетевой подсистемы балансировки нагрузки) -
Categories
(Dynamic
(json)) — категории узла. Пример:
[
"compute",
"virtual_machine"
]
-
NodeProperties
(Dynamic
(json)) — свойства узла, включая аналитические сведения, связанные с ресурсом, например, доступен ли ресурс в Интернете или уязвим для удаленного выполнения кода. Значения имеют необработанный формат данных (неструктурированный). Пример:
{
"rawData": {
"osType": "linux",
"exposed to the internet":
{
"routes": [ { … } ]
}
}
}
- EntityIds (
Dynamic
(json)) — все известные идентификаторы узлов. Пример:
{
"AzureResourceId": "A1",
"MdeMachineId": "M1",
}
ExposureGraphEdges
Схема ExposureGraphEdges вместе с дополняющей схемой ExposureGraphNodes обеспечивают видимость связей между сущностями и ресурсами в графе. Во многих сценариях охоты требуется изучение связей сущностей и путей атаки. Например, при поиске устройств, подверженных определенной критической уязвимости, зная связь между сущностями, можно обнаружить критически важные ресурсы организации.
Ниже приведены имена столбцов, метки и описания ExposureGraphEdges .
-
EdgeId
(string
) — уникальный идентификатор связи или края. -
EdgeLabel
(string
) — метка края. Примеры: "влияет", "направляет трафик в", "выполняется" и "содержит". Список меток края можно просмотреть, запросив граф. Дополнительные сведения см. в статье Перечисление всех меток edge в клиенте. -
SourceNodeId
(string
) — идентификатор узла источника края. Пример: "12346aa0-10a5-587e-52f4-280bfc014a08" -
SourceNodeName
(string
) — отображаемое имя исходного узла. Пример: "mdvmaas-win-123" -
SourceNodeLabel
(string
) — метка исходного узла. Пример: "microsoft.compute/virtualmachines" -
SourceNodeCategories
(Dynamic
(json)) — список категорий исходного узла. -
TargetNodeId
(string
) — идентификатор узла целевого объекта края. Пример: "45676aa0-10a5-587e-52f4-280bfc014a08" -
TargetNodeName
(string
) — отображаемое имя целевого узла. Пример: gke-test-cluster-1 -
TargetNodeLabel
(string
) — метка целевого узла. Пример: "compute.instances" -
TargetNodeCategories
(Dynamic
(json)) — список категорий целевого узла. -
EdgeProperties
(Dynamic
(json)) — необязательные данные, относящиеся к связи между узлами. Пример. ДляEdgeLabel
параметра "маршрутизирует трафик в" сEdgeProperties
параметромnetworkReachability
, укажите сведения о диапазонах портов и протоколов, которые используются для передачи трафика из точки А в B.
{
"rawData": {
"networkReachability": {
"type": "NetworkReachability",
"routeRules": [
{
"portRanges": [
"8083"
],
"protocolRanges": [
"6"
]
},
{
"portRanges": [
"80"
],
"protocolRanges": [
"6"
]
},
{
"portRanges": [
"443"
],
"protocolRanges": [
"6"
]
}
]
}
}
}
Операторы язык запросов Kusto graph (KQL)
Управление рисками Microsoft Security использует таблицы графов экспозиции и уникальные операторы графа экспозиции для выполнения операций над структурами графов. Граф строится на основе табличных данных с помощью make-graph
оператора , а затем запрашивается с помощью операторов графа.
Оператор make-graph
Создает make-graph operator
структуру графа на основе табличных входных данных ребер и узлов. Дополнительные сведения о его использовании и синтаксисе см. в разделе Оператор make-graph.
Оператор graph-match
Оператор graph-match
выполняет поиск всех вхождений шаблона графа во входном источнике графа. Дополнительные сведения см. в разделе Оператор graph-match.