Назад | Перейти на главную страницу

Перезапуск аудита на Эль Капитан

Я хочу отслеживать запуск процесса на El Capitan.

Darwin MaeLucirdosiMac.home 15.5.0 Ядро Дарвина Версия 15.5.0: Вт, 19 апреля, 18:36:36 PDT 2016; корень: xnu-3248.50.21 ~ 8 / RELEASE_X86_64 x86_64

Ниже моя конфигурация. Я добавил ,pc к строке 2

bash-3.2# cat /etc/security/audit_control
#
# $P4: //depot/projects/trustedbsd/openbsm/etc/audit_control#8 $
#
dir:/var/audit
flags:lo,aa,pc
minfree:5
naflags:lo,aa
policy:cnt,argv
filesz:2M
expire-after:10M
superuser-set-sflags-mask:has_authenticated,has_console_access
superuser-clear-sflags-mask:has_authenticated,has_console_access
member-set-sflags-mask:
member-clear-sflags-mask:has_authenticated

bash-3.2 # '' '

Я могу запускать и останавливать службу с помощью launchctl, и pid изменяется, но я не могу его загрузить и выгрузить. Мне непонятно, нужно ли это.

bash-3.2# launchctl list |grep audit - 0 com.apple.auditd bash-3.2# launchctl unload -w /System/Library/LaunchDaemons/com.apple.auditd.plist /System/Library/LaunchDaemons/com.apple.auditd.plist: Operation not permitted while System Integrity Protection is engaged bash-3.2# launchctl start com.apple.auditd bash-3.2# launchctl list |grep audit 5493 0 com.apple.auditd bash-3.2# launchctl load -w /System/Library/LaunchDaemons/com.apple.auditd.plist /System/Library/LaunchDaemons/com.apple.auditd.plist: service already loaded bash-3.2# launchctl stop com.apple.auditd bash-3.2# launchctl start com.apple.auditd bash-3.2# launchctl list |grep audit 5500 0 com.apple.auditd bash-3.2#

Однако мне ясно, что, несмотря на все перезапуски и процессы, которые я запускаю, в текущий журнал, похоже, ничего не записывается, что не является самой последней меткой времени и praudit ничего не показывает о процессах.

bash-3.2# ls -trl /var/audit/ . . . . -r--r----- 1 root wheel 125 Jun 20 18:16 20160620215442.20160620221602 -r--r----- 1 root wheel 250 Jun 20 18:17 20160620221602.20160620221734 -r--r----- 1 root wheel 250 Jun 20 19:16 20160620221734.20160620231602 -r--r----- 1 root wheel 125 Jun 20 19:17 20160620231602.20160620231733 -r--r----- 1 root wheel 250 Jun 20 20:16 20160620231733.20160621001602 -r--r----- 1 root wheel 125 Jun 20 20:17 20160621001602.20160621001734 -r--r----- 1 root wheel 250 Jun 20 21:16 20160621001734.20160621011602 -r--r----- 1 root wheel 125 Jun 20 21:17 20160621011602.20160621011733 -r--r----- 1 root wheel 125 Jun 20 21:18 20160621011733.20160621011807 lrwxr-xr-x 1 root wheel 40 Jun 20 21:18 current -> /var/audit/20160621011843.not_terminated -r--r----- 1 root wheel 0 Jun 20 21:18 20160621011843.not_terminated -r--r----- 1 root wheel 250 Jun 20 21:18 20160621011807.20160621011843 bash-3.2# praudit -l /var/audit/20160621011807.20160621011843 header,125,11,session start,0,Mon Jun 20 21:18:14 2016, + 120 msec,argument,1,0x0,sflags,argument,2,0x0,am_success,argument,3,0x0,am_failure,subject,-1,root,wheel,root,wheel,0,100118,0,0.0.0.0,return,success,0,trailer,125, header,125,11,session end,0,Mon Jun 20 21:18:43 2016, + 771 msec,argument,1,0x0,sflags,argument,2,0x0,am_success,argument,3,0x0,am_failure,subject,-1,root,wheel,root,wheel,0,100118,0,0.0.0.0,return,success,0,trailer,125, bash-3.2# praudit -l /var/audit/current bash-3.2#

Как заставить аудит перечитывать файлы конфигурации?

Правильный способ сделать это - выгрузить и перезагрузить список auditd. Например:

sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.auditd.plist
sudo sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.auditd.plist

Но помните об уловке22 здесь, где El Capitan по умолчанию включен SIPS, поэтому вы получите:

/System/Library/LaunchDaemons/com.apple.auditd.plist: Operation not permitted while System Integrity Protection is engaged

Вам потребуется перезапустить, чтобы изменения правила аудита вступили в силу. Остановка и запуск демона запуска с помощью launchctl {stop,start} com.apple.auditd не перечитывает audit_control файл.