Потеря событий

Возможные причины, из-за которых система аудита может терять события аудита:

  • Переполнение очереди событий:

  • Превышение ограничения по скорости записи событий в очередь;

  • Ошибка связи с демоном auditd через NETLINK-сокет;

  • Ошибка выделения памяти для внутренней служебной структуры;

  • При загрузке ОС RHEL ⇐ 7.7 - зашитый размер очереди событий в 64 сообщения, из-за чего, при переполнении очереди, сообщения теряются до тех пор пока не установится связь с auditd - это примерно 40-100 событий;

  • Во время ротации файлов локального журнала: чем больше файлов участвуют в ротации тем дольше она будет выполняться. Перед ротацией auditd останавливает запрос событий из очереди что приводит к накоплению в ней событий до того момента, пока ротация не будет завершена. Если после ротации файлов журнала растёт количество потерянных событий (auditctl -s -i), то необходимо либо увеличить размер очереди событий, либо переделать правила аудита.

Отслеживание потери событий

Переполнение очереди событий (-b):

audit: audit_backlog=9 > audit_backlog_limit=8
audit: audit_lost=85579 audit_rate_limit=0 audit_backlog_limit=8

Превышение ограничения по скорости записи событий в очередь (-r):

audit: audit_lost=151 audit_rate_limit=1 audit_backlog_limit=8192
audit: audit_lost=216 audit_rate_limit=1 audit_backlog_limit=8192