Event ID 4624. Парные сессии, уровень целостности и UAC
Last updated
Last updated
Событие 4624 в журнале Security фиксирует успешный вход пользователя в систему Windows. Это событие является одним из ключевых для мониторинга, так как оно позволяет отслеживать, кто и когда получил доступ к системе. Успешный вход может быть как легитимным, так и результатом компрометации учетной записи, поэтому аналитик SOC должен тщательно анализировать это событие.
Имя учетной записи: Учетная запись, которая вошла в систему.
Домен: Домен, к которому принадлежит учетная запись.
Идентификатор безопасности (SID): Уникальный идентификатор учетной записи.
Тип входа: Указывает, как был выполнен вход (например, интерактивный, удаленный, пакетный).
Тип аутентификации: Метод аутентификации (например, Kerberos, NTLM).
Имя рабочей станции (WorkstationName): Имя компьютера, с которого был выполнен вход.
IP-адрес(IpAddress): IP-адрес, с которого был выполнен вход (если применимо).
Restricted Admin Mode: указывает, были ли закешированы учетные данные при входе. Может помочь в расследовании, чтобы понять, какие учетные данные потенцилаьно захватил атакующий.
Уровень имперсонализации (ImpersonationLevel): механизм, который позволяет процессу выполнять действия от имени другого пользователя.
Обнаружение компрометации учетных записей:
Успешный вход может быть результатом атаки методом перебора (Brute Force) или использования украденных учетных данных.
Мониторинг доступа к критически важным системам: Позволяет отслеживать доступ к серверам, базам данных и другим важным ресурсам. Входы в необычное время, с необычных IP-адресов или с использованием нестандартных методов аутентификации могут указывать на атаку.
Расследование инцидентов: Событие 4624 помогает установить, кто получил доступ к системе и когда это произошло. А также с какими правами был осуществлен доступ.
EventID 4625 (Неудачный вход):
Неудачные попытки входа перед успешным входом могут указывать на атаку методом перебора (Brute Force).
EventID 4672 (Специальные привилегии):
Если успешный вход выполнен от имени учетной записи с высокими привилегиями, будет зарегистрировано данное событие.
Когда пользователь входит в систему, Windows создает токен доступа (access token), который содержит информацию об уровне целостности. Этот токен используется для определения прав доступа пользователя. В событии 4624 Mandatory Label указывается в поле Impersonation Level.
Mandatory Label — это механизм, который используется в Windows для управления уровнем целостности (Integrity Level) процессов и объектов. Уровень целостности определяет, какие действия может выполнять процесс или пользователь. Например:
Системный уровень целостности (System Integrity): Этот уровень присваивается системным службам и критически важным процессам операционной системы.
Высокий уровень целостности (High Integrity): Административные права.
Средний уровень целостности (Medium Integrity): Стандартные права пользователя.
Низкий уровень целостности (Low Integrity): Ограниченные права (например, для браузера в защищенном режиме).
UAC — это механизм безопасности в Windows, который ограничивает права административных учетных записей по умолчанию. Даже если пользователь входит в систему как администратор, его процессы запускаются с стандартными правами (Medium Integrity), если не требуется повышение прав.
Когда пользователь с правами локального администратора входит в систему, UAC создает два токена доступа:
Токен с ограниченными правами (Medium Integrity):
Используется для запуска большинства процессов.
Регистрируется как первая сессия в событии 4624.
Токен с полными правами (High Integrity):
Используется только при выполнении задач, требующих административных прав.
Регистрируется как вторая сессия в событии 4624.
При выполнении таких действий, UAC запрашивает подтверждение, и только после этого изменяет контекст выполнения.
Именно поэтому при анализе события 4624 (успешный вход в систему) в Windows можно заметить, что иногда регистрируются два события 4624 - парные сессии для одного входа. Причем каждая из сессий будет ссылаться на другую в поле TargetLinkedLogonId. По значения ElevatedToken можно понять, какой именно такен каким уровнем целостности обладает. %%1842 - Yes - High Integrity %%1843 - No - Medium Integrity
Если пользователь пытается запустить программу, которая требует прав администратора, например, установщик программного обеспечения или утилита для изменения системных настроек, UAC запрашивает подтверждение. Это предотвращает несанкционированные изменения в системе и защищает от вредоносного ПО. Если текущему пользователю недостаточно прав, то окно UAC попросит ввести логин и пароль другого пользователя.
Контроль учетных записей пользователей (UAC) в Windows предоставляет несколько уровней уведомлений, которые позволяют пользователям управлять тем, как система реагирует на попытки приложений выполнять действия с повышенными привилегиями. Вот основные уровни UAC:
Всегда уведомлять:
Уведомляет пользователя каждый раз, когда программа пытается внести изменения в систему или когда пользователь пытается изменить настройки, требующие прав администратора.
Это самый высокий уровень безопасности, так как требует подтверждения для всех действий, которые могут повлиять на систему.
Уведомлять только при изменениях:
Уведомления появляются только тогда, когда программы пытаются внести изменения в систему. Если пользователь запускает приложение, которое не требует повышения привилегий, уведомление не отображается.
Это более сбалансированный подход между безопасностью и удобством.
Уведомлять без затемнения экрана:
Уведомления показываются, но рабочий стол не затемняется. Это позволяет пользователю продолжать взаимодействовать с другими окнами приложения во время появления уведомления.
Этот уровень может быть менее безопасным, так как пользователь может не заметить запрос на подтверждение.
Никогда не уведомлять:
UAC отключен полностью. Приложения могут запускаться с повышенными привилегиями без каких-либо предупреждений.
Этот уровень безопасности считается небезопасным и может привести к уязвимостям в системе.
Откройте панель управления и выберите "Изменение параметров контроля учетных записей".
Переместите ползунок на нужный уровень.
Нажмите "ОК" и перезагрузите компьютер для применения изменений.
UAC запрашивает подтверждение пользователя или права администратора для выполнения задач, требующих повышенных привилегий. UAC Bypass — это обход механизма User Account Control (UAC) в Windows.
UAC позволяет некоторым доверенным процессам (например, установщикам или системным компонентам) выполнять действия с повышенными привилегиями без запроса подтверждения - через механизм AutoElevate. В манифесте приложения (XML-файл, описывающий свойства приложения) может быть указан атрибут autoElevate="true". Это позволяет приложению автоматически запрашивать повышенные права без взаимодействия с пользователем
Злоумышленники могут злоупотреблять этим механизмом, использовать уязвимости в процессах или подменять их, чтобы выполнить вредоносный код с правами администратора.
FodHelper - классический пример такой утилиты, которая может использоваться для обхода UAC. Еще есть способы связанные с mmc.exe.
Обнаружить обход UAC можно по событиям запуска процессов, сравнивая Mandatory Label родителя и дочернего процесса. И процессы, использующие механизм AutoElevate не должны порождать дочерних процессов.
Сессии (TargetLogonId): Сессия, которая создает на узле в результате входа. В рамках этой сессии в дальнейшем будут запущены все процессы. Иногда регистрируются две сессии для одного входа. Каждая из сессий будет ссылкается на другую в поле TargetLinkedLogonId. (Это связано с и механизмом ).