Личный блог Suvan`a.

Работая и играя с Linux... И что из этого иногда получается.

Безопасность

Подписаться на эту рубрику по RSS

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

     Обнаружение нарушения безопасности

     Огромное количество взломов системы остается незамеченным администраторами долгое время - от нескольких дней до нескольких месяцев или даже лет. Если вы обнаружили, что ваша система взломана, то будьте уверены - она была взломана задолго до того, как вы это обнаружили. Мало просто обнаружить, что система взломана, нужно еще выявить и устранить «дыру» в системе безопасности. Но не думайте, что это простая задача.

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

     Самое первое, что нужно сделать - это отключить вашу машину от сети (мы подразумеваем, что ваша система была взломана именно по сети, а не локальным пользователем, у которого есть физический доступ к машине). После этого в спокойной обстановке (если ее можно назвать таковой, когда за спиной стоят десятка два пользователей с одним вопросом: «Когда будет работать сервер?») нужно проанализировать ваши протоколы. Да, крекер может модифицировать протоколы, но он этого не сделает, если вы следовали приведенным в книге рекомендациям и установили одну из ACL (хотя быту же LIDS).

Далее...

     Если у вас быстрое интернет-соединение (более 10 Мб), при запуске Snort на брандмауэре вы не заметите особого снижения производительности. Ситуация несколько иная, если Snort запускается внутри LAN. Поскольку скорости здесь значительно выше - от 100 Мб до 1 Гб, производительность может снизиться.

     Для решения этой проблемы вам нужно использовать утилиту Barnyard Logging - ее можно взять на сайте Snort. Когда она запущена, Snort передает ей свой вывод в двоичном виде для последующей обработки, что может несколько скрасить ситуацию с производительностью.

     Если использование Barnyard Logging особых результатов не дало, можно использовать модифицированную версию libpcap (http://public.lanl.gov/cpw/). Данная версия использует разделяемую память, в результате чего больше не нужно копировать данные из памяти ядра в пользовательскую память. Благодаря этому повышается производительность.

Далее...

     Системы обнаружения вторжения (Intrusion Detection System) выполняют мониторинг сети, что позволяет обнаружить различные атаки. Большинство IDS используют два метода обнаружения вторжения: на основании сигнатуры (IDS «знает» сигнатуру многих эксплоитов) и метод обнаружения аномалий (система сначала «изучает» типичные образцы сетевого трафика сети, а затем выявляет все отклонения от образца).

     Многие IDS позволяют блокировать подозрительный трафик, по умолчанию эта функция выключена — считается, что IDS должна просто обнаруживать вторжение, а не блокировать его.

Далее...

     Chkrootkit (http://www.chkrootkit.org) — это просто антивирус, специализирующийся на руткитах — ведь троянская программа считается вирусом. Chkrootkit, кроме руткитов, позволяет обнаруживать и другой тип программ — червей. Текущая версия chkrootkit позволяет обнаружить более 50 вредоносных программ, среди них:

• LRK (Linux Rootkit).

• TOrn.

• Adore LKM.

• червь Slapper.

• Червь Adore (не путайте с руткитом Adore).

Далее...

     После того, как Tripwire установлен и сконфигурирован на рабочей системе, надо произвести проверку целостности. Эту процедуру можно сделать как в автоматическом режиме, так и вручную. С помощью Tripwire можно изменить базу данных, если изменения в файловой системе произошли с разрешения (или были сделано осознано).

     Автоматическая проверка.

     После того, как была создана база данных, Tripwire готов к употреблению. Если он был установлен с RPM, то будет параллельно добавлена задача cron: Tripwire будет запускаться ежедневно. Если же он был установлен вручную, для автоматической ежедневной проверки нужно создать файл twcheck в /etc/cron.daily:

#!/bin/sh

HOST_NAME= 'uname -n'

if [ ! -e /var/lib/tripwire/${HOST_NAME}.twd ]; then echo "*** Error: Tripwire database for ${HOST_NAME} not fountd"

echo "*** Run "/etc/tripwire/twinstall.sh" and/or "tripwire —init." else

test -f /etc/tripwire/tw.cfg && /usr/sbin/tripwire --check fi

Далее...

     Игнорирование файлов и каталогов

     Tripwire сканирует только перечисленные в файле правил объекты, но иногда не надо производить мониторинг каких-то неважных файлов. Например, если был установлен /etc -> $ReadOnly, то будет производиться мониторинг каталога /etc, всех его файлов, всех подкаталогов и всех файлов в подкаталогах.

     Если не нужно производить мониторинг определенных файлов, их можно указать с помощью знака отрицания:

Далее...

Если крекер получит доступ к системе, то он попытается скрыть следы своего присутствия (конечно, если его цель - вандализм, то он просто разрушит эту систему). Известны случаи, когда хакер скрывал свое фигурирование в системе несколько лет.

     Лучший способ выявить крекера - это произвести мониторинг целостности системных файлов. Ведь в большинстве случаев крекер будет изменять какие-то файлы, а мониторинг поможет выявить это. Лучшими программами для этих целей являются Tripwire и Chkrootkit.

Далее...