Отказано в доступе при добавлении правила аудита в плагин audisp
Я пытаюсь написать плагин audisp на Linux CentOS 7 VM. Вместо статической установки правил аудита через /etc/audit/rules.d/ я хотел динамически добавлять правила в плагин с использованием интерфейсов libaudit (на основе некоторых системных настроек).
Мой код выглядит примерно так:
int fd_audit = audit_open(); // this is successful
if (audit_is_enabled(fd_audit) <= 0)
audit_set_enabled(fd_audit, 1); // "Permission denied" error given
}
else {
// set some rules
}
Проблема, с которой я сталкиваюсь, связана с функцией audit_set_enabled(), поскольку разрешение запрещается, когда SELinux принудительно работает. Когда SELinux является разрешающим, audit_set_enabled() возвращает успешное состояние, но добавление правила аудита по-прежнему не удается.
Я попытался найти сообщения об отказе AVC, но не могу найти ни одного.
Любая помощь или совет приветствуется.
1 ответ
Удалось решить вышеуказанную проблему, отключив правила "не проверять" с помощьюsudo semodule -DB
,
Тогда я смог получить журналы AVC и исправить правила sepolicy с помощью audit2allow
, Кажется мне не хватает netlink_audit_socket { read write }
права доступа.