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

         

Конфигурация ядра


Чтоб настроить ядро, добавив поддержку LIDS, воспользуйся make menuconfig или любой другой командой конфигурации ядра, удобной тебе:

cd /usr/src/linux make menuconfig

Первым делом выбери пункт меню Code maturity level options. Внутри ты найдешь опцию Prompt for development and/or incomplete code/drivers(CONFIG_EXPERIMENTAL). Данная опция должна быть включена (CONFIG_EXPERIMENTAL=y).

[*] Prompt for development and/or incomplete code/drivers

Затем выбери пункт меню General setup. Найди опцию Sysctl support(CONFIG_SYSCTL). Данная опция также должна быть включена (CONFIG_SYSCTL=y).

[*] Sysctl support

Затем выбери пункт Linux Intrusion Detection System. Внутри ты найдешь различные параметры настройки LIDS. Первым идет включение поддержки LIDS в ядре. Нажми пробел на этом пункте для включения поддержки:

[*] Linux Intrusion Detection System support (EXPERIMENTAL)

После включения поддержки LIDS, возникнет список различных опций настройки LIDS:

Maximum protected objects to manage(CONFIG_LIDS_MAX_INODE)

    Данный пункт позволяет установить максимальное количество защищаемых объектов. По умолчанию 1024. Чем больше число, тем больше размер ядра.:)

Maximum ACL subjects to manage(CONFIG_LIDS_MAX_SACL)

    Позволяет установить максимальное количество субъектов правил доступа LIDS. По умолчанию 1024.



Maximum ACL objects to manage(CONFIG_LIDS_MAX_OACL)

    Позволяет установить максимальное количество объектов правил доступа LIDS. По умолчанию 1024. Об объектах, субъектах правил доступа, самих правилах, защите объектов .:)

Maximum protected proceeds(CONFIG_LIDS_MAX_PROTECTED_PID)

    Позволяет установить максимальное количество защищаемых процессов. По умолчанию 1024.

Hang up console when raising securit alert(CONFIG_LIDS_HANGUP)

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



Security alert when execing unprotected programs before sealing LIDS(CONFIG_LIDS_SA_EXEC_UP)


    Включает/отключает вывод сообщения о нарушении безопасности при запуске незащищенных программ до установки способностей. Рекомендуется включить данную опцию, т.к. это позволит обнаружить программы, которые администратор либо забыл защитить при помощи LIDS, либо которые были установлены в начальную загрузку злобным хакером.:) О способностях позже.:)


Do not execute unprotected programs before sealing LIDS(CONFIG_LIDS_NO_EXEC_UP)


    Включает/отключает запрет на запуск незащищенных программ до установки способностей. Не включай эту опцию, пока не будешь уверен в том, что все программы, запускающиеся при начальной загрузке, защищены!


Try not to flood logs(CONFIG_LIDS_NO_FLOOD_LOGS)


    При включении этой опции LIDS не будет записывать в логи подряд идущие сообщения об одном и том же нарушении защиты. Для большей безопасности рекомендуется не включать данную опцию.

    Autorized time between two identic logs (seconds)(CONFIG_LIDS_TIMEOUT_AFTER_FLOOD)


      Здесь устанавливается время в секундах, в течении которых проверяется появление двух идентичных сообщений, для того, чтоб не записывать одинаковые сообщения в логи. По умолчанию 60 секунд.


    Allow switching LIDS protections(CONFIG_LIDS_ALLOW_SWITCH)


      Включает/отключает возможность отключения и включения LIDS в процессе работы системы после ввода пароля. При включение данной опции появляется возможность поменять любые параметры работы без перезагрузки системы. Для лучшей безопасности рекомендуется отключить данную опцию, но пока ты полностью не разобрался с работой и настройкой LIDS лучше оставить ее включенной.

      Numbers of attempts to submit password(CONFIG_LIDS_MAX_TRY)


        Количество попыток ввода пароля, по истечению которых отключение LIDS становится невозможным на заданный промежуток времени. По умолчанию 3. Для большей безопасности поставь 1.:)


      Time to wait after fail (seconds)(CONFIG_LIDS_TTW_FAIL)




        Время в секундах, в течении которого после ввода неправильного пароля указанное количество раз, отключение LIDS становится невозможным. По умолчанию 3 секунды. Для большей безопасности поставь 3600 секунд, чтоб хакер сильнее помучился.:)


      Allow remote users to switch LIDS protections(CONFIG_LIDS_REMOTE_SWITCH)


        Дает возможность удаленным пользователям отключать LIDS. Не рекомендуется включать данную опцию.


      Allow any program to switch LIDS protections(CONFIG_LIDS_ANY_PROG_SWITCH)


        Дает возможность любой программе отключать LIDS. Для чего может понадобится данная опция даже авторы LIDS не знают. Настоятельно рекомендуется не включать эту опцию!


      Allow reloading config. file(CONFIG_LIDS_RELOAD_CONFIG)


        Если ты отключаешь защиту, то видимо для того, чтоб изменить какие-то настройки. Эти настройки не вступят в силу до тех пор, пока ты не дашь команду считать заново файлы конфигурации. Данная опция включает возможность переконфигурации LIDS без перезагрузки компьютера.


      Port Scanner Detector in kernel(CONFIG_LIDS_PORT_SCAN_DETECTOR)


        При включении данной опции в ядро вкомпиливается детектор сканирования портов. Детектор очень мощный, определяет практически все известные методы сканирования портов. Рекомендуется включить данную опцию.


      Send security alerts through network(CONFIG_LIDS_SA_THROUGH_NET)


        Включает/отключает возможность отправки электронной почты при нарушении безопасности на указанный удаленный e-mail с информацией о нарушении. Письмо отправляется незамедлительно при попытке совершения несанкционированных действий. Для отправки может использоваться любой smtp-сервер, как удаленный, так и локальный.

        Hide KLIDS network threads(CONFIG_LIDS_SA_HIDE_KLIDS)


          Включение данной опции позволяет скрывать сетевые соединения LIDS. Они не будут видны ни в /proc, ни при запуске netstat. Но в этом случае все ошибки соединения с smtp- сервером не будут записываться в логи.


        Number of connection tries before giving up(CONFIG_LIDS_NET_MAX_TRIES)


          Здесь указывается количество попыток соединения с smtp-сервером.


          Если соединение не будет установлено - письмо с информацией о нарушении безопасности не будет отправлено. По умолчанию 3. Для большей уверенности поставь здесь достаточно большое число.


        Sleep time after a failed connection(CONFIG_LIDS_NET_TIMEOUT)


          Время в секундах между попытками соединения.


        Message queue size(CONFIG_LIDS_MSGQUEUE_SIZE)


          Максимальное количество сообщений в очереди. При превышении данного количества, самое старое неотправленное сообщение удаляется из очереди.


        Use generic mailer pseudo-script(CONFIG_LIDS_MAIL_SCRIPT)


          Включении данной опции указывает LIDS использовать стандартный скрипт для отправки сообщения. Отключение указывает использовать скрипт пользователя. В версии 0.9.8 эта опция не работает. Поэтому обязательно должна быть включена. В предыдущих версиях работала и позволяла использовать свой скрипт для отправки сообщений на удаленный компьютер. Можно было выбрать протокол (TCP или UDP) и другие параметры передачи сообщения. Хотя если немного поработать над исходниками (/usr/src/linux/kernel/KLIDS.c), можно заставить эту опцию работать.:) Но лучше предоставить эту работу авторам.


      LIDS debug(CONFIG_LIDS_DEBUG)


        Эта опция добавлена только в версии 0.9.8. Используется для включение вывода отладочных сообщений LIDS. Если ты не собираешься сам переписывать исходники LIDS - оставь эту опцию отключенной.


      Таким образом, после настройки всех параметров, в /usr/src/linux/.config должны появится строки, примерно такого содержания:

      CONFIG_LIDS=y CONFIG_LIDS_MAX_INODE=1024 CONFIG_LIDS_MAX_SACL=1024 CONFIG_LIDS_MAX_OACL=1024 CONFIG_LIDS_MAX_PROTECTED_PID=1024 CONFIG_LIDS_HANGUP=y CONFIG_LIDS_SA_EXEC_UP=y # CONFIG_LIDS_NO_EXEC_UP is not set CONFIG_LIDS_NO_FLOOD_LOG=y CONFIG_LIDS_TIMEOUT_AFTER_FLOOD=60 CONFIG_LIDS_ALLOW_SWITCH=y CONFIG_LIDS_MAX_TRY=3 CONFIG_LIDS_TTW_FAIL=3600 # CONFIG_LIDS_REMOTE_SWITCH is not set # CONFIG_LIDS_ALLOW_ANY_PROG_SWITCH is not set CONFIG_LIDS_RELOAD_CONF=y CONFIG_LIDS_PORT_SCAN_DETECTOR=y CONFIG_LIDS_SA_THROUGH_NET=y CONFIG_LIDS_HIDE_KLIDS=y CONFIG_LIDS_NET_MAX_TRIES=3 CONFIG_LIDS_NET_TIMEOUT=10 CONFIG_LIDS_MSGQUEUE_SIZE=16 CONFIG_LIDS_MAIL_SCRIPT=y # CONFIG_LIDS_DEBUG is not set

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

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

      cd /usr/src/linux make clean dep install modules modules_install

      Пока идет компиляции ядра, можно занятся настройкой других параметров LIDS. НО НИ ПРИ КАКИХ УСЛОВИЯХ НЕ ПЕРЕГРУЖАЙ МАШИНУ, ПОКА НЕ ЗАКОНЧИШЬ НАСТРОЙКУ LIDS!!!

      , 2000.

      Использование данного документа разрешено только с согласия автора и с указанием первоисточника:



      Содержание раздела