Издательский дом ООО "Гейм Лэнд"ЖУРНАЛ ХАКЕР #95, НОЯБРЬ 2006 г.

Личная неприкосновенность для тукса

Денис «dhsilabs» Колисниченко

Хакер, номер #095, стр. 095-114-2


# cp arch/i386/boot/bzImage /boot/bzImage-2.6.xx-lids

Теперь добавляем в grub.conf следующие строки:

# vi /boot/grub/grub.conf

title LIDS

root (hd0,0)

kernel /boot/bzImage-2.6.xx-lids ro root=/dev/hda5

Не забываем при этом изменять свою корневую файловую систему (у меня это /dev/hda5). Если ты используешь LILO, а не GRUB, то в файл /etc/lilo.conf нужно добавить:

# vi /etc/lilo.conf

image=/boot/bzImage-2.6.xx-lids

label="LIDS"

root=/dev/hda5

В случае с LILO, чтобы внесенные изменения вступили в силу, требуется перезаписать загрузчик:

# lilo

Установка ACL

Для нормальной работы LIDS нужно обновить и скомпилировать поддержку списков контроля доступа. Осуществляется это двумя командами:

# lidsconf -U

# lidsconf -C

Осталось только перезагрузить компьютер:

# reboot

Чтобы убедиться, что LIDS стартовала корректно (должны появиться сообщения об инициализации ACL-ов LIDS), после загрузки системы введем команду:

# dmesg | tail -n 11

Установка lidstools

Следующий шаг - установка пакета lidstools. Сценарию ./configure следует явно передать абсолютный путь до каталога с нашим ядром:

# tar -zvxf lidstools-2.2.5

# cd lidstools-2.2.5rc1.tar.gz

# ./configure KERNEL_DIR=/usr/src/linux-2.6.7

# make

# make install

При выполнении цели make install тебя попросят ввести пароль для администрирования LIDS, он не должен совпадать с паролем root.

Все, снова отправляем компьютер на перезагрузку:

# reboot

Мы уже рассмотрели процедуру построения нового ядра, поэтому сейчас займемся конфигурированием пользовательского уровня. Система LIDS позволяет управлять взаимодействием процессов и файлов в системе. Кроме этого, LIDS предоставляет две очень полезные функции: LFS и «опечатывание» ядра.

Сессии без LIDS

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

Обычно LFS используется админом для редактирования файлов в каталоге /etc/lids, который недоступен во время работы LIDS даже пользователю root. Как правило, в этом каталоге находятся следующие файлы:

* lids.cap - ограниченный набор возможностей;

* lids.conf - ACL (будет рассмотрен позже);

* lids.pw - пароль администратора LIDS;

* lids.ini - начальные конфигурационные значения.

«Опечатывание» ядра

С одной стороны, загружаемые модули очень полезны, так как могут быть прилинкованы к ядру прямо во время работы ОС. С другой стороны, злоумышленник может добавить к ядру свои собственные модули, что никак не входит в наши планы. Для предотвращения подобных ситуаций LIDS предлагает концепцию «опечатывания» ядра, препятствующего чьей-либо загрузке/выгрузке модуля. Опечатать ядро можно с помощью команды lidsadm -I. Эту команду следует поместить в сценарии загрузки системы. При этом важно убедиться, что все необходимые модули загружены до выполнения команды lidsadm -I.

Назад на стр. 095-114-1  Содержание  Вперед на стр. 095-114-3