LIDS система обнаружения и защиты от вторжения


Правила доступа - часть 3


Естественно, я указал не все программы, которые должны иметь доступ в каталог /etc. Вычислять остальные программы я предоставляю тебе.:)

Файл /etc/shadow лучше спрятать вообще. Это защитит от кражи паролей пользователей.

LIDSadm -A -o /etc/shadow -j DENY

Если оставить все так, ни один пользователь (как и сам root) не сможет зарегистрироваться в системе.:) Доступ к /etc/shadow требуют многие программы. К ним можно смело отнести /bin/login, /bin/su. Также пользователям может потребоваться доступ по ftp.

LIDSadm -A -s /bin/login -o /etc/shadow -j READ LIDSadm -A -s /bin/su -o /etc/shadow -j READ LIDSadm -A -s /usr/sbin/in.ftpd -o /etc/shadow -j READ

В описании LIDS есть прекрасный пример защиты от замены головной страницы web-сервера, самой любимой шутки хакеров.:) Сначала прячем от всех и вся каталог /home/httpd:

LIDSadm -A -o /home/httpd -j DENY

Затем даем демону httpd доступ на чтение на этот каталог:

LIDSadm -A -s /usr/sbin/httpd -o /home/httpd -j READ

То же можно сделать и с файлами конфигурации web-сервера:

LIDSadm -A -o /etc/httpd/conf -j DENY LIDSadm -A -s /usr/sbin/httpd -o /etc/httpd/conf -j READ

Неплохо было бы также защитить от изменений файлы логов. Сначала надо сделать каталог /var/log доступным только для дозаписи:

LIDSadm -A -o /var/log -j APPEND

Некоторые файлы дожны быть доступны для записи:

LIDSadm -A -s /bin/login -o /var/log/lastlog -j WRITE LIDSadm -A -o /var/log/wtmp -j WRITE LIDSadm -A -s /usr/sbin/sendmail -o /var/log/sendmail.st -j WRITE

Если ты пользуешься /usr/sbin/logrotate, то лучше предоставить этой программе доступ на запись ко всему каталогу:

LIDSadm -A -s /usr/sbin/logrotate -o /var/log -j WRITE

В качестве объекта правил доступа может также служить способность, т.е. если ты отключил какую-то способность для всех программ, ты можешь предоставить ее какой-то определенной. Целью в данном случае могут являться - предоставлять потомкам процесса данную способность (INHERIT) или не предоставлять (NO_INHERIT). Предположим, если ты убрал способность CAP_SYS_RAWIO у всех программ, то такая способность должна быть предоставлена X-серверу, причем этой способностью не должны обладать его потомки.




Начало  Назад  Вперед