• Проверка целостности системы. Этот режим используется по умолчанию. Для того чтобы запустить Tripwire в таком режиме, достаточно ввести в командной строке
tripwire
. Проверку целостности системы желательно выполнять каждый день. Периодический вызов Tripwire можно организовать с помощью
cron
.
Работой Tripwire управляет конфигурационный файл
/etc/tripwire/tw.config
. Подобно многим другим конфигурационным файлам, строки, начинающиеся с символа
#
, содержат комментарии. В остальных строках указываются каталоги, предназначенные для проверки. Соответствующие записи имеют следующий формат:
[!|=] объект [флаги_выбора | шаблон]
Назначение
компонентов записи приведено ниже.
•
!
. Если данный символ предшествует имени объекта, то указанный файл или каталог не подлежит проверке. Если объектом является каталог, содержащиеся в нем подкаталоги также не проверяются.
•
=
. Данный символ указывает на то, что каталог подлежит проверке, а файлы и подкаталоги, содержащиеся в нем, не должны проверяться. Обычно этот символ указывается для рабочих каталогов пользователей. Если символ
=
предшествует имени каталога, то Tripwire лишь сообщает о том, что файлы или подкаталоги были созданы или удалены, но не приводит подробную информацию об этих файлах.
•
объект
. Объект представляет собой имя файла или каталога, предназначенного для проверки, например
/etc
или
/usr
. Если в качестве объекта указан каталог, выполняется проверка всех его подкаталогов. Не проверяются лишь подкаталоги, представляющие собой отдельные файловые системы. Например, если содержимое каталогов
/usr
и
/usr/local
находится в разных разделах, то, чтобы проверить все дерева подкаталогов, вы должны создать записи как для
/usr
, так и для
/usr/local
.
•
флаги_выбора
. Данный компонент записи указывает Tripwire на то, какие типы изменений должны быть отражены в отчете. Флаги задаются в формате
[+|-] [pinugsamc123456789]...
. Символ
+
или
–
разрешает или запрещает включать сведения в отчет. Остальные символы определяют типы проверки. Например, p задает поверку прав доступа,
i
— проверку индексных дескрипторов (mode),
n
соответствует числу связей,
u
— идентификатору владельца файла,
g
— идентификатору группы,
s
— размеру файла,
а
— времени доступа,
m
— времени модификации,
с
— времени создания индексного дескриптора, а числа 0-9 задают особенности контрольного суммирования.
•
шаблон
. Вместо флагов выбора вы можете задать шаблон. По умолчанию принимается шаблон
R
, соответствующий
+pinugsm12-ac3456789
. В качестве примеров других шаблонов можно привести
L
(
+pinugsacm123456789
), используемый для проверки файлов протоколов,
N
(
+pinugsamc123456789
), который выполняет подробную проверку, но проверка эта занимает много времени, и
E
(
– pinugsamc123456789
), игнорирующий все типы проверки.
Сформировав конфигурационный файл Tripwire, вы должны запустить программу в режиме генерации базы данных. В результате файл базы данных будет создан в каталоге
databases
.
При последующих запусках Tripwire будет отыскивать файл базы данных в каталоге
/usr/lib/tripwire/databases
. Этот файл очень важен, поэтому вы должны обеспечить его сохранность. Способы сохранения файла базы данных описаны ниже.
• Файл базы данных может храниться на сменном носителе, защищенном от записи, например на дискете или компакт-диске. Если вы собираетесь выполнять проверку, периодически запуская Tripwire с помощью
cron
, носитель может быть постоянно смонтирован (такой подход создает неудобства при работе с системой). Если вы предполагаете запускать Tripwire вручную, носитель можно монтировать непосредственно перед проверкой.
• Для сохранения файла базы данных можно создать отдельный небольшой раздел и монтировать его только для чтения. При этом целесообразно предпринять дополнительные меры по обеспечению сохранности базы данных. Например, вы можете отформатировать раздел по соглашениям операционной системы, отличной от Linux. Это затруднит действия взломщика по поиску пароля, но не гарантирует целостность файла. Опытный хакер способен преодолеть подобные преграды.
• Вы можете записать на резервный носитель копию файла базы данных и перед началом проверки сравнить файлы. Если файл базы данных будет отличаться от резервной копии, это само по себе уже свидетельствует о факте вмешательства в работу системы.
• Tripwire поддерживает кодирование данных, поэтому файл базы данных можно сохранить в зашифрованном виде. Чтобы изменить содержимое файла базы данных, взломщик должен знать пароль, использовавшийся при кодировании.
Предприняв необходимые меры для сохранения файла базы данных, вы сможете контролировать целостность файлов на вашем компьютере. Необходимо лишь помнить, что база данных Tripwire должна создаваться непосредственно после установки Linux. Если от момента инсталляции системы до момента создания базы данных пройдет хотя бы один-два дня, то вполне возможно, что за это время система подвергнется атаке и в базу данных будут записаны сведения об измененных файлах.
Способы, позволяющие выявить вторжение в систему
Помимо применения специализированных инструментов, таких как Tripwire, обнаружить факт вторжения можно путем анализа различных признаков. Некоторые из этих признаков перечислены ниже.
• Записи в файлах протоколов. Файлы протоколов, располагающиеся в каталоге
/var/log
, содержат информацию о работе серверов. Как было сказано ранее, для обработки файлов вручную требуется слишком много времени, и не каждый администратор может позволить себе заняться этим. Однако с помощью специализированных инструментов, например SWATCH, вы можете выявить факты, свидетельствующие о взломе. Например, если вы обнаружите, что пользователь, находящийся в отпуске в другой стране, на днях зарегистрировался на сервере, это означает, что его учетной записью воспользовался кто-то другой.
• Некорректная работа сервера. Если сервер без видимых причин начинает работать некорректно, это может быть признаком вторжения, так как взломщики, пытаясь изменить конфигурацию сервера, часто портят конфигурационные файлы. Очевидно, что неправильная работа сервера может быть вызвана целым рядом других причин, но версию вторжения извне также нельзя сразу отбрасывать.
• Жалобы пользователей. Для регистрации в системе взломщики часто используют учетные записи других пользователей. Настраивая окружение пользователя в соответствии со своими потребностями, они нередко портят конфигурационные файлы, отвечающие за формирование среды. Поэтому жалобы пользователей на то, что система внезапно начала отвергать пароль или что параметры оболочки по непонятным причинам изменились, нельзя оставлять без внимания.