Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Схема нормализации веб-сеанса используется для описания действий в IP-сети. Например, о действиях в IP-сети сообщают веб-сервера, веб-прокси и шлюзы веб-безопасности.
Дополнительные сведения о нормализации в Microsoft Sentinel см. в статье Нормализация и расширенная информационная модель безопасности (ASIM).
Общее представление схемы
Схема нормализации веб-сеансов представляет любой сетевой сеанс HTTP и хорошо подходит для обеспечения поддержки распространенных типов источников, включая следующие:
- Веб-серверы
- Веб-прокси.
- Шлюзы веб-безопасности.
Схема веб-сеанса ASIM представляет действия по протоколам HTTP и HTTPS. Так как схема представляет действия по протоколу, она регулируется RFC и официально назначенными списками параметров, которые описываются в этой статье, когда это необходимо.
Схема веб-сеанса не представляет события аудита с исходных устройств. Например, событие, изменяющее политику шлюза веб-безопасности, не может быть представлено схемой веб-сеанса.
Так как сеансы HTTP — это сеансы уровня приложения, использующие TCP/IP в качестве базового сеанса сетевого уровня, схема веб-сеанса является надмножеством схемы сетевого сеанса ASIM.
Самые важные поля в схеме веб-сеанса:
- Url, которое включает ULR-адрес, запрашиваемый клиентом у сервера.
- SrcIpAddr (псевдоним IpAddr) — представляет IP-адрес, из которого был создан запрос.
- Поле EventResultDetails , которое обычно сообщает код состояния HTTP.
События веб-сеанса могут также включать сведения о пользователях и процессах, инициирующих запрос.
Средства синтаксического анализа
Дополнительные сведения о средствах синтаксического анализа ASIM см. в обзоре средств синтаксического анализа ASIM.
Комплексные средства синтаксического анализа
Чтобы использовать средства синтаксического анализа, которые объединяют все средства синтаксического анализа ASIM вне коробки и убедитесь, что анализ выполняется во всех настроенных источниках, используйте _Im_WebSession средство синтаксического анализа.
Готовые и зависящие от источника средства синтаксического анализа
Список стандартных средств синтаксического анализа веб-сеансов Microsoft Sentinel см. в списке средств синтаксического анализа ASIM.
Добавление собственных нормализованных средств синтаксического анализа
При реализации пользовательских средств синтаксического анализа для информационной модели веб-сеансов называйте свои функции KQL согласно следующему синтаксису:
-
vimWebSession<vendor><Product>для параметризованных средств синтаксического анализа -
ASimWebSession<vendor><Product>для обычных средств синтаксического анализа
Параметры фильтрации средств синтаксического анализа
Средства синтаксического анализа im и vim* поддерживают параметры фильтрации. Хотя эти средства синтаксического анализа являются необязательными, они могут повысить производительность запросов.
Доступны следующие параметры фильтрации:
| Имя. | Тип | Описание |
|---|---|---|
| starttime | datetime | Обрабатывать только те веб-сеансы, которые были запущены в это время или после этого. Этот параметр фильтрует TimeGenerated поле, являющееся стандартным конструктором во время события, независимо от сопоставления конкретных анализаторов полей EventStartTime и EventEndTime. |
| endtime | datetime | Обрабатывать только те веб-сеансы, которые были запущены в это время или до этого. Этот параметр фильтрует TimeGenerated поле, являющееся стандартным конструктором во время события, независимо от сопоставления конкретных анализаторов полей EventStartTime и EventEndTime. |
| 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.
Общие поля с конкретными рекомендациями
В следующем списке упоминаются поля, имеющие определенные рекомендации по обработке событий веб-сеанса:
| Поле | Класс | Тип | Описание |
|---|---|---|---|
| Тип события | Обязательно | 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 (ПодробнееEventResultDetails) | Рекомендуемая конфигурация | Enumerated | Статус HTTP-код, определенный Консорциумом Всемирной Паутины Примечание. Значение может быть указано в исходной записи с использованием разных терминов, которые должны быть нормализованы до этих значений. Исходное значение должно храниться в поле EventOriginalResultDetails. |
| EventSchema | Обязательно | Enumerated | Имя описанной здесь схемы — WebSession. |
| EventSchemaVersion | Обязательно | SchemaVersion (String) | Номер версии схемы. Здесь приведена версия схемы 0.2.7 |
| Поля Dvc | Для событий веб-сеанса поля устройства ссылаются на систему, которая сообщает о событии веб-сеанса. Обычно это промежуточное устройство для HTTPSession событий, а также целевой веб-сервер или сервер приложений для WebServerSession и ApiRequest событий. |
Все общие поля
Поля, представленные в таблице ниже, являются общими для всех схем ASIM. Все указанные выше рекомендации переопределяют общие рекомендации для поля. Например, поле может быть необязательным в целом, но обязательным для конкретной схемы. Дополнительные сведения о каждом поле см. в статье Общие поля ASIM.
Поля сетевого сеанса
HTTP-сеансы — это сеансы уровня приложения, использующие TCP/IP в качестве базового сеанса сетевого уровня. Схема веб-сеанса — это супер набор схемы сетевого сеанса ASIM, а все поля сетевой схемы также включены в схему веб-сеанса.
Для следующих полей схемы сетевого сеанса ASIM имеются определенные рекомендации при использовании для события веб-сеанса:
- Псевдоним пользователя должен ссылаться на SrcUsername, а не на DstUsername.
- Поле EventOriginalResultDetails может хранить любой результат, сообщаемый источником, в дополнение к коду состояния HTTP, хранимому в EventResultDetails.
- Для веб-сеансов основным полем назначения является Url Field. DstDomain необязательно (а не рекомендуется). В частности, если оно недоступно, его не нужно извлекать из URL-адреса в средстве синтаксического анализа.
- Поля
NetworkRuleNameиNetworkRuleNumberпереименованыRuleNameсоответственноRuleNumber.
О событиях веб-сеанса обычно сообщают промежуточные устройства, которые завершают HTTP-подключение от клиента и инициируют новое подключение с сервером, выступающее качестве прокси-сервера. Чтобы представить промежуточное устройство, используйте поля промежуточного устройства схемысетевых сеансов ASIM
Поля сеанса HTTP
Ниже приведены дополнительные поля, относящиеся к веб-сеансам:
| Поле | Класс | Тип | Описание |
|---|---|---|---|
| URL-адрес | Обязательно | URL (строка) | URL-адрес HTTP-запроса, включая параметры. Для HTTPSession событий URL-адрес может содержать схему и должен содержать имя сервера.
WebServerSession Для ApiRequest URL-адреса обычно не будет содержать схему и сервер, которые можно найти в NetworkApplicationProtocol полях и DstFQDN полях соответственно. Пример: https://contoso.com/fo/?k=v&q=u#f |
| UrlCategory | Необязательно | Строка | Определенная группа URL-адреса или часть домена URL-адреса. Эта категория обычно предоставляется шлюзами веб-безопасности и основана на содержимом сайта, на который указывает URL-адрес. Пример: поисковые системы, домены для взрослых, домены новостей, рекламные домены и закрепленные домены. |
| UrlOriginal | Необязательно | URL (строка) | Исходное значение 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 отправленного файла. Пример: d55c5a4df19b46db8c54c801c4665d3338acdab0 |
| FileSHA256 | Необязательно | SHA256 | Для передачи по HTTP это хэш SHA256 отправленного файла. Пример: e81bb824c4a09a811af17deae22f22dd2e1ec8cbb00b22629d2899f7c68da274 |
| FileSHA512 | Необязательно | SHA512 | Для передачи по HTTP это хэш SHA512 отправленного файла. |
| Мешанина | Псевдоним | Псевдоним для доступного поля хэша. | |
| HashType | Conditional | Enumerated | Тип хэша в поле Hash. Возможные значения: MD5, SHA1, SHA256 и SHA512. |
| FileSize | Необязательно | Long | Для передачи по HTTP это размер (в байтах) отправленного файла. |
| FileContentType | Необязательно | Строка | Для передачи по HTTP это тип содержимого отправляемого файла. |
| HttpCookie | Необязательно | Строка | Содержимое заголовка HTTP-файлов cookie, отправляемого с клиента на сервер, содержащего пары данных сессии имя-значение. Пример: session_id=abc123; user_pref=dark_mode |
| HttpIsProxied | Необязательно | Boolean | Указывает, был ли HTTP-запрос отправлен через прокси-сервер. Пример: true |
| HttpRequestBodyBytes | Необязательно | Long | Размер тела HTTP-запроса в байтах, не включая заголовки. Пример: 1024 |
| HttpRequestCacheControl | Необязательно | Строка | Содержимое HTTP Cache-Control заголовок запроса, указывающий директивы кэширования от клиента. Пример: no-cache |
| HttpRequestHeaderCount | Необязательно | Целое | Количество HTTP-заголовков, включённых в запрос. Пример: 12 |
| HttpResponseBodyBytes | Необязательно | Long | Размер тела ответа HTTP в байтах, не считая заголовков. Пример: 8192 |
| HttpResponseCacheControl | Необязательно | Строка | Содержимое HTTP Cache-Control заголовок ответа, указывающий директивы кэширования сервера. Пример: max-age=3600, public |
| HttpResponseExpires | Необязательно | Строка | Содержимое заголовка ответа HTTP Expires, указывающего на срок истечения содержимого ответа. Пример: Thu, 01 Dec 2024 16:00:00 GMT |
| HttpResponseHeaderCount | Необязательно | Целое | Количество HTTP-заголовков, включённых в ответ. Пример: 15 |
Другие поля
Если о событии сообщает одна из конечных точек веб-сеанса, оно может содержать сведения о процессе, который инициировал или завершил сеанс. В таких случаях используется схема событий процесса ASIM для нормализации этой информации.
Обновления схемы
Схема веб-сеанса зависит от схемы сетевого сеанса. Поэтому обновления схемы сетевого сеанса также применяются к схеме веб-сеанса.
Ниже приведены изменения в схеме версии 0.2.5:
- Добавлено поле
HttpHost.
Ниже приведены изменения в схеме версии 0.2.6:
- Тип FileSize был изменен с целочисленного на Long.
Ниже приведены изменения в версии 0.2.7 схемы:
- Добавлены поля
HttpCookie,HttpIsProxied,HttpRequestBodyBytesHttpRequestCacheControlHttpRequestHeaderCountHttpResponseBodyBytesHttpResponseCacheControl,HttpResponseExpiresи .HttpResponseHeaderCount
Дальнейшие действия
Дополнительные сведения см. в разделе:
- Посмотрите веб-семинар ASIM или слайды.
- Обзор расширенной информационной модели безопасности (ASIM)
- Схемы расширенной информационной модели безопасности (ASIM)
- Средства синтаксического анализа расширенной информационной модели безопасности (ASIM)
- Содержимое расширенной информационной модели безопасности (ASIM)