Справочник по схеме нормализации веб-сеанса в расширенной информационной модели безопасности (ASIM) (общедоступная предварительная версия)
Схема нормализации веб-сеанса используется для описания действий в IP-сети. Например, о действиях в IP-сети сообщают веб-сервера, веб-прокси и шлюзы веб-безопасности.
Дополнительные сведения о нормализации в Microsoft Sentinel см. в статье Нормализация и расширенная информационная модель безопасности (ASIM).
Внимание
В настоящее время схема нормализации сети предоставляется в предварительной версии. Эта функция предоставляется без соглашения об уровне обслуживания, и ее не рекомендуется использовать в среде для производственных рабочих нагрузок.
Предварительная версия дополнительных условий использования Azure включают дополнительные юридические условия, применимые к функциям Azure, которые находятся в бета-версии, предварительной версии или еще не общедоступны по другим причинам.
Общее представление схемы
Схема нормализации веб-сеансов представляет любой сетевой сеанс HTTP и хорошо подходит для обеспечения поддержки распространенных типов источников, включая следующие:
- Веб-серверы
- Веб-прокси.
- Шлюзы веб-безопасности.
Схема веб-сеанса ASIM представляет действия по протоколам HTTP и HTTPS. Так как схема представляет действия по протоколу, она регулируется RFC и официально назначенными списками параметров, которые описываются в этой статье, когда это необходимо.
Схема веб-сеанса не представляет события аудита с исходных устройств. Например, событие, изменяющее политику шлюза веб-безопасности, не может быть представлено схемой веб-сеанса.
Так как сеансы HTTP — это сеансы уровня приложения, использующие TCP/IP в качестве базового сеанса сетевого уровня, схема веб-сеанса является надмножеством схемы сетевого сеанса ASIM.
Самые важные поля в схеме веб-сеанса:
- Url, которое включает ULR-адрес, запрашиваемый клиентом у сервера.
- SrcIpAddr (псевдоним IpAddr) — представляет IP-адрес, из которого был создан запрос.
- Поле EventResultDetails , которое обычно сообщает код состояния HTTP.
События веб-сеанса могут также включать сведения о пользователях и процессах, инициирующих запрос.
Средства синтаксического анализа
Дополнительные сведения о средствах синтаксического анализа ASIM см. в обзоре средств синтаксического анализа ASIM.
Комплексные средства синтаксического анализа
Чтобы использовать средства синтаксического анализа, объединяющие все готовые средства синтаксического анализа ASIM, и убедиться, что ваш анализ выполняется во всех настроенных источниках, используйте средство синтаксического анализа с фильтрацией _Im_WebSession
или средство синтаксического анализа без параметров_ASim_WebSession
.
Вы также можете использовать средства синтаксического анализа ImWebSession
и ASimWebSession
, развернутые в рабочей области, развернув их из репозитория Microsoft Sentinel на GitHub. Дополнительные сведения см. в разделе Встроенные средства синтаксического анализа ASIM и развернутые в рабочей области средства синтаксического анализа.
Готовые и зависящие от источника средства синтаксического анализа
Список стандартных средств синтаксического анализа веб-сеансов Microsoft Sentinel см. в списке средств синтаксического анализа ASIM.
Добавление собственных нормализованных средств синтаксического анализа
При реализации пользовательских средств синтаксического анализа для информационной модели веб-сеансов называйте свои функции KQL согласно следующему синтаксису:
vimWebSession<vendor><Product>
для параметризованных средств синтаксического анализаASimWebSession<vendor><Product>
для обычных средств синтаксического анализа
Параметры фильтрации средств синтаксического анализа
Средства синтаксического анализа im
и vim*
поддерживают параметры фильтрации. Хотя эти средства синтаксического анализа являются необязательными, они могут повысить производительность запросов.
Доступны следующие параметры фильтрации:
Имя. | Тип | Описание |
---|---|---|
starttime | datetime | Обрабатывать только те веб-сеансы, которые были запущены в это время или после этого. |
endtime | datetime | Обрабатывать только те веб-сеансы, которые были запущены в это время или до этого. |
srcipaddr_has_any_prefix | по строкам | Обрабатывать только веб-сеансы, для которых префикс поля исходного IP-адреса находится в одном из указанных значений. Список значений может включать IP-адреса, а также префиксы IP-адресов. Префиксы должны заканчиваться на . , например: 10.0. . Длина списка ограничена 10 000 элементов. |
ipaddr_has_any_prefix | по строкам | Фильтровать только сетевые сеансы, для которых префикс поля IP-адреса назначения или поля исходного IP-адреса имеет одно из указанных значений. Префиксы должны заканчиваться на . , например: 10.0. . Длина списка ограничена 10 000 элементов.Поле ASimMatchingIpAddr задается одним из значений SrcIpAddr , DstIpAddr или Both в зависимости от соответствующих полей. |
url_has_any | по строкам | Обрабатывать только те веб-сеансы, для которых поле URL-адреса имеет одно из указанных значений. Средство синтаксического анализа может игнорировать схему URL-адреса, переданного в качестве параметра, если источник не сообщает о нем. Если этот параметр указан и сеанс не является веб-сеансом, результат не будет возвращен. Длина списка ограничена 10 000 элементов. |
httpuseragent_has_any | по строкам | Обрабатывать только те веб-сеансы, для которых поле агента пользователя имеет одно из указанных значений. Если этот параметр указан и сеанс не является веб-сеансом, результат не будет возвращен. Длина списка ограничена 10 000 элементов. |
eventresultdetails_in | по строкам | Обрабатывать только те веб-сеансы, для которых код состояния HTTP в поле EventResultDetails имеет одно из указанных значений. |
eventresult | строка | Фильтровать только сетевые сеансы с определенным значением EventResult. |
Некоторые параметры могут принимать оба списка значений типа dynamic
или одно строковое значение. Чтобы передать список литералов в параметры, которые предполагают динамическое значение, явно используйте динамический литерал. Например: dynamic(['192.168.','10.'])
Например, чтобы отфильтровать только веб-сеансы для указанного списка доменных имен, используйте:
let torProxies=dynamic(["tor2web.org", "tor2web.com", "torlink.co"]);
_Im_WebSession (url_has_any = torProxies)
Сведения о схеме
Модель сведений о веб-сеансе соответствует схеме сетевых сущностей OSSEM и схеме сущностей HTTP OSSEM.
Для соответствия лучшим отраслевым методикам схема веб-сеанса использует дескрипторы Src и Dst для определения источника сеанса и устройств назначения без включения Dvc маркера в имя поля.
Поэтому, например, имя узла исходного устройства и IP-адрес имеют имена SrcHostname и SrcIpAddr соответственно, а не SrcDvcHostname и SrcDvcIpAddr. Префикс Dvc используется только для передающего или промежуточного устройства (при применимости).
Поля, описывающие пользователя и приложение, связанные с исходным и целевым устройствами, также используют дескрипторы Src и Dst.
Другие схемы ASIM обычно используют Target вместо Dst.
Общие поля ASIM
Внимание
Поля, общие для всех схем, подробно описаны в статье Общие поля ASIM.
Общие поля с конкретными рекомендациями
В следующем списке упоминаются поля, имеющие определенные рекомендации по обработке событий веб-сеанса:
Поле | Класс | Тип | Описание |
---|---|---|---|
EventType | Обязательно | Enumerated | Описывает операцию, о которой сообщает эта запись. Допустимые значения: - HTTPsession : обозначает сетевой сеанс, используемый для HTTP или HTTPS, как правило, промежуточным устройством, например прокси-сервером или шлюзом веб-безопасности.- WebServerSession : обозначает HTTP-запрос, сообщаемый веб-сервером. Такое событие обычно имеет меньше сведений о сети. Указанный URL-адрес не должен содержать схему и имя сервера, а только путь и параметры, часть URL-адреса. - ApiRequest : обозначает HTTP-запрос, связанный с вызовом API, обычно сообщаемый сервером приложений. Такое событие обычно имеет меньше сведений о сети. При отправке данным сервером приложений URL-адрес не должен включать схему и имя сервера, а только путь и параметры, часть URL-адреса. |
EventResult | Обязательно | Enumerated | Описывает результат события, нормализованный до одного из следующих значений: - Success - Partial - Failure - NA (неприменимо) Для сеанса HTTP Success определяется как код состояния меньше 400 , а Failure определяется как код состояния больше 400 . Список кодов состояний HTTP см. на странице организации W3.Возможно, что источник предоставляет значение только для поля EventResultDetails, которое нужно отдельно анализировать для получения значения EventResult. |
EventResultDetails | Рекомендуемая конфигурация | Строка | Код состояния HTTP. Примечание. Значение может быть указано в исходной записи с использованием разных терминов, которые должны быть нормализованы до этих значений. Исходное значение должно храниться в поле EventOriginalResultDetails. |
EventSchema | Обязательно | Строка | Имя описанной здесь схемы — WebSession . |
EventSchemaVersion | Обязательно | Строка | Номер версии схемы. Здесь приведена версия схемы 0.2.6 |
Поля Dvc | Для событий веб-сеанса поля устройства ссылаются на систему, которая сообщает о событии веб-сеанса. Обычно это промежуточное устройство для HTTPSession событий, а также целевой веб-сервер или сервер приложений для WebServerSession и ApiRequest событий. |
Все общие поля
Поля, представленные в таблице ниже, являются общими для всех схем ASIM. Все указанные выше рекомендации переопределяют общие рекомендации для поля. Например, поле может быть необязательным в целом, но обязательным для конкретной схемы. Дополнительные сведения о каждом поле см. в статье Общие поля ASIM.
Class | Поля |
---|---|
Обязательно | - EventCount - EventStartTime - EventEndTime - EventType - EventResult - EventProduct - EventVendor - EventSchema - EventSchemaVersion - Dvc |
Рекомендуемая конфигурация | - EventResultDetails - EventSeverity - EventUid - DvcIpAddr - DvcHostname - DvcDomain - DvcDomainType - DvcFQDN - DvcId - DvcIdType - DvcAction |
Необязательно | - EventMessage - EventSubType - EventOriginalUid - EventOriginalType - EventOriginalSubType - EventOriginalResultDetails - EventOriginalSeverity - EventProductVersion - EventReportUrl - EventOwner - DvcZone - DvcMacAddr - DvcOs - DvcOsVersion - DvcOriginalAction - DvcInterface - AdditionalFields - DvcDescription - DvcScopeId - DvcScope |
Поля сетевого сеанса
HTTP-сеансы — это сеансы уровня приложения, использующие TCP/IP в качестве базового сеанса сетевого уровня. Схема веб-сеанса — это супер набор схемы сетевого сеанса ASIM, а все поля сетевой схемы также включены в схему веб-сеанса.
Для следующих полей схемы сетевого сеанса ASIM имеются определенные рекомендации при использовании для события веб-сеанса:
- Псевдоним пользователя должен ссылаться на SrcUsername, а не на DstUsername.
- Поле EventOriginalResultDetails может хранить любой результат, сообщаемый источником, в дополнение к коду состояния HTTP, хранимому в EventResultDetails.
- Для веб-сеансов основным полем назначения является Url Field. DstDomain необязательно (а не рекомендуется). В частности, если оно недоступно, его не нужно извлекать из URL-адреса в средстве синтаксического анализа.
- Поля
NetworkRuleName
иNetworkRuleNumber
переименованыRuleName
соответственноRuleNumber
.
О событиях веб-сеанса обычно сообщают промежуточные устройства, которые завершают HTTP-подключение от клиента и инициируют новое подключение с сервером, выступающее качестве прокси-сервера. Чтобы представить промежуточное устройство, используйте поля промежуточного устройства схемы сетевых сеансов ASIM
Поля сеанса HTTP
Ниже приведены дополнительные поля, относящиеся к веб-сеансам:
Поле | Класс | Тип | Описание |
---|---|---|---|
URL-адрес | Обязательно | Строка | URL-адрес HTTP-запроса, включая параметры. Для HTTPSession событий URL-адрес может содержать схему и должен содержать имя сервера. ApiRequest Для WebServerSession URL-адреса обычно не будет содержать схему и сервер, которые можно найти в NetworkApplicationProtocol полях и DstFQDN полях соответственно. Пример: https://contoso.com/fo/?k=v&q=u#f |
UrlCategory | Необязательно | Строка | Определенная группа URL-адреса или часть домена URL-адреса. Эта категория обычно предоставляется шлюзами веб-безопасности и основана на содержимом сайта, на который указывает URL-адрес. Пример: поисковые системы, домены для взрослых, домены новостей, рекламные домены и закрепленные домены. |
UrlOriginal | Необязательно | Строка | Исходное значение URL-адреса, если URL-адрес был изменен передающим устройством и указаны оба значения. |
HttpVersion | Необязательно | Строка | Версия HTTP-запроса. Пример: 2.0 |
HttpRequestMethod | Рекомендуемая конфигурация | Enumerated | Метод HTTP. Используются значения, определенные в стандартах RFC 7231 и RFC 5789. Они включают следующие: GET , HEAD , POST , PUT , DELETE , CONNECT , OPTIONS , TRACE и PATCH .Пример: GET |
HttpStatusCode | Псевдоним | Код состояния HTTP. Псевдоним для EventResultDetails. | |
HttpContentType | Необязательно | Строка | Заголовок типа содержимого для HTTP-ответа. Примечание. Поле HttpContentType может включать формат содержимого и дополнительные параметры, например кодирование, используемое для получения фактического формата. Пример: text/html; charset=ISO-8859-4 |
HttpContentFormat | Необязательно | Строка | Часть HttpContentType с форматом содержимого. Пример: text/html |
HttpReferrer | Необязательно | Строка | Заголовок источника ссылки HTTP. Примечание. Синхронизируясь с OSSEM, ASIM использует правильное написание источника ссылки, а не исходное написание HTTP-заголовка. Пример: https://developer.mozilla.org/docs |
HttpUserAgent | Необязательно | Строка | Заголовок агента пользователя HTTP. Пример: Mozilla/5.0 (Windows NT 10.0; WOW64)AppleWebKit/537.36 (KHTML, например Gecko)Chrome/83.0.4103.97 Safari/537.36 |
UserAgent | Псевдоним | Псевдоним для HttpUserAgent. | |
HttpRequestXff | Необязательно | IP-адрес | HTTP-заголовок X-Forwarded-For. Пример: 120.12.41.1 |
HttpRequestTime | Необязательно | Целое | Время (в миллисекундах), затраченное на отправку запроса на сервер (если применимо). Пример: 700 |
HttpResponseTime | Необязательно | Целое | Время (в миллисекундах), затраченное на получение ответа на сервере (если применимо). Пример: 800 |
HttpHost | Необязательно | Строка | Виртуальный веб-сервер, на который предназначен HTTP-запрос. Обычно это значение основано на заголовке узла HTTP. |
FileName | Необязательно | Строка | Для передачи по HTTP это имя отправленного файла. |
FileMD5 | Необязательно | MD5 | Для передачи по HTTP это хэш MD5 отправленного файла. Пример: 75a599802f1fa166cdadb360960b1dd0 |
FileSHA1 | Необязательно | SHA1 | Для передачи по HTTP это хэш SHA1 отправленного файла. Пример: d55c5a4df19b46db8c54 c801c4665d3338acdab0 |
FileSHA256 | Необязательно | SHA256 | Для передачи по HTTP это хэш SHA256 отправленного файла. Пример: e81bb824c4a09a811af17deae22f22dd 2e1ec8cbb00b22629d2899f7c68da274 |
FileSHA512 | Необязательно | SHA512 | Для передачи по HTTP это хэш SHA512 отправленного файла. |
Hash | Псевдоним | Псевдоним для доступного поля хэша. | |
FileHashType | Необязательно | Enumerated | Тип хэша в поле Hash. Возможные значения: MD5 , SHA1 , SHA256 и SHA512 . |
FileSize | Необязательно | Long | Для передачи по HTTP это размер (в байтах) отправленного файла. |
FileContentType | Необязательно | Строка | Для передачи по HTTP это тип содержимого отправляемого файла. |
Другие поля
Если о событии сообщает одна из конечных точек веб-сеанса, оно может содержать сведения о процессе, который инициировал или завершил сеанс. В таких случаях используется схема событий процесса ASIM для нормализации этой информации.
Обновления схемы
Схема веб-сеанса зависит от схемы сетевого сеанса. Поэтому обновления схемы сетевого сеанса также применяются к схеме веб-сеанса.
Ниже приведены изменения в схеме версии 0.2.5:
- Добавлено поле
HttpHost
.
Ниже приведены изменения в схеме версии 0.2.6:
- Тип FileSize был изменен с целочисленного на Long.
Дальнейшие действия
Дополнительные сведения см. в разделе:
- Посмотрите веб-семинар ASIM или слайды.
- Обзор расширенной информационной модели безопасности (ASIM)
- Схемы расширенной информационной модели безопасности (ASIM)
- Средства синтаксического анализа расширенной информационной модели безопасности (ASIM)
- Содержимое расширенной информационной модели безопасности (ASIM)