В
Самый простейший способ контроля — наблюдение за датой редактирования. Допустим, что взломщик проник в вашу систему в 10:30. Чтобы узнать, что было изменено злоумышленником, можно запустить поиск всех файлов, у которых дата корректировки больше этого времени. Вроде легко, но не очень эффективно, потому что дату можно изменить с помощью команды touch
. В общем виде команда выглядит следующим образом:
touch параметры ММДДччммГГ файл
Прописными буквами показаны параметры даты, а строчными — время. Формат немного непривычный, но запомнить можно. Год указывать необязательно, в этом случае будет использоваться текущий.
Рассмотрим пример. Допустим, что вы хотите установить на файл /etc/passwd дату изменения 21 января 11:40
. Для этого выполняем следующую команду:
touch 01211140 /etc/passwd
Теперь воспользуйтесь командой ls -l /etc/passwd
, чтобы убедиться, что дата и время изменения установлены верно.
С помощью команды touch
можно и создавать файлы, сразу же указывая необходимую дату.
Несмотря на то, что дата корректировки легко изменяется, хакер может забыть или просто не успеть сделать это, а, возможно, ему просто не хватит прав.
Итак, найти все файлы, дата изменения которых больше 21 января 11:40 2005 года, можно следующим образом:
touch 0121114005 /tmp/tempfile
find /etc \(-newer /tmp/tempfile \) -ls
find /etc \(-cnewer /tmp/tempfile \) -ls
find /etc \(-anewer /tmp/tempfile \) -ls
В первой строке мы создаем файл во временной директории /tmp с необходимой датой изменения, по которой и будет происходить сравнение.
Следующие три строки производят поиск файлов. Каждая из них имеет следующую структуру:
find директория \( -сравнение файл \) -ls
Рассмотрим по частям эту строку:
□ find
— программа поиска файлов;
□ директория
— каталог, в котором нужно искать. В нашем случае я указал системный /etc, в котором хранятся все настроечные файлы;
□ параметр (-сравнение файл \)
— состоит из файла для сопоставления и критерия поиска файлов, который может принимать различные значения:
• -newer
— дата изменения больше, чем у заданного файла в параметре файл
;
• -cnewer
— состояние изменено позже, чем у сопоставляемого файла в параметре файл
;
• -anewer
— дата последнего доступа превосходит, аналогичный параметр сравниваемого файла;
□ параметр -ls
— отображает на экране список файлов (как при выполнении команды ls
).
На даты изменения можно надеяться, но необходимо дополнительное средство проверки. Наилучшим методом является подсчет контрольной суммы. Допустим, что вы хотите отслеживать изменения в директории /etc. Для этого выполните следующую команду:
md5sum /etc/*
Таким образом, подсчитывается контрольная сумма указанных в качестве параметра файлов. На экране вы получите результат выполнения команды примерно такого вида:
783fd8fc5250c439914e88d490090ae1 /etc/DIR_COLORS
e2eb98e82a51806fe310bffdd23ca851 /etc/Muttrc
e1043de2310c8dd266eb0ce007ac9088 /etc/a2ps-site.cfg
4543eebd0f473107e6e99ca3fc7b8d47 /etc/a2ps.cfg
c09badb77749eecbeafd8cb21c562bd6 /etc/adjtime
70aba16e0d529c3db01a20207fd66b1f /etc/aliases
c3e3a40097daed5c27144f53f37de38e /etc./aliases.db
3e5bb9f9e8616bd8a5a4d7247f4d858e /etc/anacrontab
fe4aad090adcd03bf686103687d69f64 /etc/aspldr.conf
...
Результат отображается в две колонки: первая содержит контрольную сумму, а вторая — имя файла. Контрольные суммы подсчитываются только для файлов. Для каталогов будет выведено сообщение об ошибке.
В данном случае указаны все файлы каталог а /etc/*. Результат расчета выводится на экран. Но запоминать эти данные неудобно, поэтому логично будет записать их в файл, чтобы потом использовать его содержимое для анализа изменений. Следующая команда сохраняет результат в файле /home/flenov/md:
Вильям Л Саймон , Вильям Саймон , Наталья Владимировна Макеева , Нора Робертс , Юрий Викторович Щербатых
Зарубежная компьютерная, околокомпьютерная литература / ОС и Сети, интернет / Короткие любовные романы / Психология / Прочая справочная литература / Образование и наука / Книги по IT / Словари и Энциклопедии