IBCOURSES / СПРАВОЧНИК ИБ

Linux Audit USER_AUTH — попытка аутентификации

К ответу ↓

Приложение сообщило о попытке аутентификации. Это тип записи Linux Audit, а не универсальный Event ID Linux.

Например
Материалов с пояснениями: 94 · Записей реестров: 11 678

Уточнить поиск

События и журналы

Найдено: 84
Инструкция по проверке

Linux Audit USER_AUTH — попытка аутентификации

Приложение сообщило о попытке аутентификации. Это тип записи Linux Audit, а не универсальный Event ID Linux.

Область применимости

Таблица типов записей относится к RHEL 7/8. Руководство RHEL 9 описывает устройство аудита. Применимость типов записей сверяйте с версией пакета. Для поиска нужны версии audit, PAM и OpenSSH на исследуемом хосте.

Событие зависит от поддержки аудита приложением/PAM-цепочкой, работы подсистемы и сохранения данных. Правила системных вызовов сами по себе не гарантируют, что любое приложение создаст USER_AUTH. Не искать этот тип в произвольном syslog как обязательный числовой Event ID. Для Альт см. отдельный паспорт; Astra/РЕД ОС требуют собственных проверок.

Иллюстрация записи

Сокращённый пример записи. Данные условные:

type=USER_AUTH msg=audit(1700000000.100:901): pid=2450 uid=0 auid=4294967295 ses=4294967295 msg='op=PAM:authentication acct="demo.user" exe="/usr/sbin/sshd" hostname=? addr=192.0.2.25 terminal=ssh res=failed'

Набор полей может отличаться по приложению и конфигурации. Сохранять raw вместе с удобочитаемой интерпретацией.

Поле Смысл и ловушка
type Тип этой записи; это не результат попытки
msg=audit(timestamp:serial) Время и serial для связывания записей одного audit event
uid Учётная запись процесса, сообщающего событие; при sshd значение 0 не означает, что клиент — root
auid Исходный loginuid при его наличии; в pre-auth контексте может быть unset
ses Audit session при её наличии; unset нельзя использовать как уникальную общую сессию
acct Учётная запись, участвующая в проверяемой операции; это не всегда actor административного изменения
exe / pid Локальное приложение, отправившее запись; не удалённый клиентский процесс
addr / terminal Контекст запроса, если заполнен; не гарантия личности и полного сетевого пути
op / res Этап и его результат; не подменять результатом всего подключения

Поля и loginuid описаны в Audit Reference. Значение 4294967295 в приведённой иллюстрации обозначает unset; формат показа зависит от инструмента. Для атрибуции нужно проверить его представление в выбранной среде.

Поиск

Команды чтения за текущие сутки; нужны права на журнал.

sudo ausearch -m USER_AUTH -ts today --raw
sudo ausearch -m USER_AUTH -ts today -i

Если получен нужный serial, например 901, повторить выборку в фактическом интервале нужного события:

sudo ausearch -a 901 -ts today --raw

901 заменить своим ID; timestamp примера выше не соответствует команде за текущие сутки. Для расследования старых данных выбрать реальный диапазон и узел. Синтаксис -m, -a, -ts, raw/interpret и input — upstream ausearch(8).

При анализе перенесённого raw-файла:

ausearch -if ./sanitized-audit.log -m USER_AUTH --raw

Имя файла — пример. -i может интерпретировать идентификаторы по текущей среде анализа; сохранять числовые значения и учитывать историческое соответствие UID/имени.

Как связывать записи

В одном audit event несколько записей могут иметь общие timestamp/serial; пример структуры — руководство RHEL 7. При центральном сборе нужны также узел и контекст загрузки/времени; serial не является глобальным UUID.

Аутентификация, авторизация и начало сеанса могут быть разными audit events с разными serial. Их связывают по контексту процесса/сессии/учётной записи и времени, а не искусственно объявляют одним событием. Не все записи имеют одинаковые поля.

Что делать с результатом

Для ausearch код завершения 1 неоднозначен: возможны отсутствие совпадений, ошибка аргументов или небольшая ошибка доступа/чтения. Сохраните stderr и проверьте доступность входного файла; по одному коду 1 нельзя заключать, что событий нет.

Отказ: проверить этап и настройки приложения, ожидаемый метод входа, частоту и источник. Возможны ошибка пользователя или неактуальные credentials. Успех: искать последующие этапы и подтверждение начала сеанса; не утверждать его по одному USER_AUTH. Пустая выборка: проверить auditd, реальные log_file/период, права, ротацию и поддержку аудита приложением. Ни один из вариантов сам по себе не устанавливает атаку.

Связи: Журнал аудита в словаре, российский профиль, сценарий создания учётной записи. Для создания пользователя ищется ADD_USER, а не USER_AUTH и не выдуманный USER_ADD.

Поля и область применения

Поле Смысл и ловушка
type Тип этой записи; это не результат попытки
msg=audit(timestamp:serial) Время и serial для связывания записей одного audit event
uid Учётная запись процесса, сообщающего событие; при sshd значение 0 не означает, что клиент — root
auid Исходный loginuid при его наличии; в pre-auth контексте может быть unset
ses Audit session при её наличии; unset нельзя использовать как уникальную общую сессию
acct Учётная запись, участвующая в проверяемой операции; это не всегда actor административного изменения
exe / pid Локальное приложение, отправившее запись; не удалённый клиентский процесс
addr / terminal Контекст запроса, если заполнен; не гарантия личности и полного сетевого пути
op / res Этап и его результат; не подменять результатом всего подключения

Примеры записей

Данные в примерах условные. Состав полей зависит от версии и настроек источника.

Пример записи аутентификации Linux Audit

Фрагмент журнала. Пример записи Linux Audit. Условия регистрации описаны в разделе «Ответ».

type=USER_AUTH msg=audit(1700000000.100:901): pid=2450 uid=0 auid=4294967295 ses=4294967295 msg='op=PAM:authentication acct="demo.user" exe="/usr/sbin/sshd" hostname=? addr=192.0.2.25 terminal=ssh res=failed'

Команды и способы проверки

Укажите свой узел, путь к журналу и временной интервал. Требуемая среда указана рядом с командой.

Linux Audit userspace

sudo ausearch -m USER_AUTH -ts today --raw

Linux Audit userspace

sudo ausearch -m USER_AUTH -ts today -i

Первоисточники

Успешная аутентификация на этом этапе ещё не доказывает открытие сеанса.

Связанные материалы

Как пользоваться техническим справочником

Найдите порт, код ошибки, событие или источник журнала. Уточните протокол и систему, затем сверяйте значение, поля, примеры и первоисточники. Назначение порта не определяет фактическую службу, а одна запись не доказывает инцидент.

Материалы по разделам

События и журналы

Два ответа рядом

Сравнение источников

Сравнение показывает различия. События и поля разных систем не считаются эквивалентными.

Выберите службу

В списке — службы, доступные с текущими условиями. Число рядом — количество записей портов, а не программ на вашем узле.

Как искать в справочнике

Введите число, код, фрагмент сообщения или вопрос. Известный идентификатор поможет найти карточку; это не анализ самого инцидента.

  1. Введите номер, код, имя или фрагмент записи. Для портов можно использовать список: 80, 443, 8000–8010.
  2. Уточните поиск фильтрами. Все условия действуют одновременно. Числа в списках показывают, сколько материалов останется при выборе варианта.
  3. Службу выбирайте из каталога: поиск внутри списка помогает найти название, а кнопка «Выбрать» применяет его.
  4. Убирайте отдельные условия кнопкой × рядом с фильтром. «Сбросить фильтры» сохраняет текст поиска и текущий раздел.
  5. В карточке сверьте источник, версию и условия регистрации, затем откройте поля, примеры и первоисточник.

/ — перейти к поиску. Прямые ссылки открывают выбранную карточку в этом же справочнике.

Назначения портов и коды приведены по официальным реестрам. Версии, условия регистрации и ссылки на документацию указаны в карточках.

Избранное и недавние материалы хранятся в этом браузере. Запрос и фильтры сохраняются при возврате к выдаче и обновлении вкладки. Поиск работает локально.

Что есть в справочнике

От вопроса к свидетельствам: кто вошёл, что запустил, к каким данным обратился, что изменил и где искать следы.

Выберите область, чтобы посмотреть доступные источники и перейти к материалам.

Уточнить или исправить ответ

Скопируйте сообщение и отправьте его на mail@ibcourses.ru.