Intro
Пора обсудить логирование на удаленных
серваках. Сразу говорю, что одни вообще не
ведут логов, другие их не смотрят, а
третьи только этим и занимаются:). Здесь
мы все это отбросим, я просто приведу
примеры защиты от логов. Сделаю обзор logwriter'ов.
Итак, второе, что делает хакер после
взлома системы - модификация/удаление логов.
А логов может быть уйма. Это, например, всем
известный syslogd. Потом bash_history. Cron тоже
помогает в этом (можно например копировать
выводы команд w,who,last,lastlog через каждую
минуту на отдельную машину, тогда вы уж
точно засветитесь.). Плюс имеет место
установка специализированного софта. Ну и
грамотная настройка файрволла/IDS'а с
логированием тоже может плохо кончиться.
Как же со всем этим справиться? Главное
убедится в отсутствии рута или других 'видных'
пользователей. Тогда уже можно начать
работу.
Стандарт
Итак, первое, что нужно сделать -
проанализировать ваш недавний взлом. Нужно
обратить внимание на используемые вами
дырявые сервисы (ftp,http,ssh,sendmail,pop3 etc.).
Возможно, стоит посмотреть /var/log/[сервис] и
найти нужную вещь... Потом нужно немедленно
заняться стандартным демоном, таким как
syslogd. Для этого используйте logwriter'ы (смотрите
обзор ниже). Потом можно удалить bash_history (или
какой там у вас шелл?). Да, кстати, советую
посмотреть /var/log/secure (это логи TCPWRAPPER'а,он
логирует все подключения.)
Дополнительный софт
Теперь для более осторожных. Из
дополнительного софта чаще всего ставится
tripwire. Приемы противодействия можно найти на
[http://www.void.ru/] ,а то
я не хочу повторяться. На дополнительном
софте я не буду останавливаться, т.к.
количество его пугает:). Мне очень не
хочется говорить, что все здесь зависит от
удачи, но кажется придется. Проги
логирования сейчас пошли очень продвинутые,
и в процессах их не видать, и в скрытых
папках живут, а то и на другом разделе
жесткого диска... В общем, здесь все зависит
от вашей смекалки и обширности знаний в
этой области.
Мозг админа
Админы часто попадаются довольно умные:).
Применяют различные штучки. Например syslogd
сообщения переправляют на отдельную
станцию, на консоль root'а, всем пользователям...
Таким шуточкам трудно противостоять.
Многие усиленно юзают cron, выполняя всякие
зловещие логерные команды... Так что лучше
все тщательно проверить. Да что тут
говорить о приемах админов? У каждого свое
на уме. Всегда надейтесь на свою голову, а то
в последнее время одними logwriter'ами и
ограничиваются...
IDS/FIREWALL
Сразу говорю, это разные вещи. Firewall
фильтрует пакеты по определенному правилу[ам].
А IDS предотвращает ИЗВЕСТНЫЕ БАЗЕ атаки. А 'firewall'ы'
в Windows'е - сплошная каша из обоих. Разберемся
с файрволлом. Он редко бывает грамотно
настроен:).Ну а если и так, то все правила
можно спокойно сбросить (для самых
отчаянных), да и обычно все логируется в syslog'е.
С IDS'ом тоже обычно проблем не возникает, так
как его мало кто ставит, также тщательная
настройка многих админов просто убивает (точнее
не тщательная, а очень сложная, просто так
все не пойдет:)). Да и к тому же IDS'у известны
только атаки, содержащиеся в базе, а как
часто админ ее обновляет? Тем более, что если
вы придумали что-то новенькое, то и
беспокоиться не стоит.
Обзор LOGWRITER'ов
Конечно, основная часть затерки/модификации
логов - logwriter'ы. Уж больно привлекает их
автоматизация:). Но многие используют logwriter'ы
наугад, даже не удостоверившись в их
работоспособности и АККУРАТНОСТИ. Вот для
них я и привожу этот обзор. Ну а все из них
можно найти на технотронике или
пакетсторме.
1.)remove - Очищает файлы wtmp,utmp,lastlog. Не
оставляет пустых байтов.
2.)marry - Очищает utmp,wtmp,syslog.
3.)utclean - Очищает wtmp[x],utmp[x].
4.)zap[2] - Очищает lastlog,wtmp.
5.)displant.c - Очищает utmp
6.)cloak[2] - Очищает lastlog,utmp,wtmp.
6.)wtmped - Очищает wtmp.
7.)wzap - Очищает wtmp.
8.)utmp - Очищает utmp.
9.)ucloak - Очищает lastlog,utmp.
10.)sysfog - Добавляет поддельные записи в syslogd.
(да, теперь ваш сосед-ботаник хакает
пентагон:))
11.)stealth - Очищает utmp.
12.)logwedit - Очищает wtmp по номеру tty.
13.)logutmpeditor - Очищает utmp.
14.)logcloak - Очищает wtmp,utmp.lastlog.
15.)lastlog - Очищает lastlog.
16.)wipe - Очищает WTMP,LASTLOG,UTMP.
P.S. Сразу говорю, что очищает - не значит
удаляет, а просто модифицирует.