Михаил Флёнов - Linux глазами хакера
- Название:Linux глазами хакера
- Автор:
- Жанр:
- Издательство:БХВ-Петербург
- Год:2005
- Город:Санкт-Петербург
- ISBN:5-94157-635-8
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Михаил Флёнов - Linux глазами хакера краткое содержание
Рассмотрены вопросы настройки ОС Linux на максимальную производительность и безопасность. Описаны потенциальные уязвимости и рекомендации по предотвращению возможных атак. Дается подробное описание настройки прав доступа и конфигурирования сетевого экрана. Показано, как действовать при атаке или взломе системы, чтобы максимально быстро восстановить ее работоспособность и предотвратить потерю данных.
Для пользователей, администраторов и специалистов по безопасности
Linux глазами хакера - читать онлайн бесплатно ознакомительный отрывок
Интервал:
Закладка:
mkdir /mnt/vfat
mount -t vfat /dev/hda3 /mnt/vfat
Первая команда создает директорию /mnt/vfat, куда будет подключаться диск с FAT32.
Во второй команде происходит монтирование диска /dev/hda5. Будем считать, что как раз он и принадлежит Windows. Ключ
-t
позволяет указать тип подключаемой файловой системы. Это обязательно. Для CD-ROM мы этого не делали только потому, что вся необходимая информация есть в файле /etc/fstab. Файловая система указана в параметре vfat
. Это имя для FAT32, которое используется в Linux.
Более подробно о работе команды можно узнать на страницах документации (
man mount
).
umount
Когда вы подключили к файловой системе CD-ROM, то это устройство блокируется, и диск нельзя вытащить, пока он не будет размонтирован. Для этого используется команда
umount
.
Например, следующая команда позволяет размонтировать CD-ROM:
umount /dev/cdrom
fdformat
Перед использованием дискет их нужно отформатировать. В ОС Linux для этого используется команда
fdformat
.
tar
По ходу изложения данной книги мы иногда будем устанавливать различные программы, часть из них поставляется в виде архивов tar.gz. Чаще всего это программы, хранимые в исходных кодах. Для разархивирования такого файла нужно выполнить команду:
tar xzvf имяфайла.tar.gz
Как правило, после выполнения команды в текущей директории будет создан каталог с таким же именем, как у архива (только без расширения). В нем вы сможете найти все распакованные файлы.
К работе с архивами мы вернемся в гл. 13 , когда будем рассматривать резервирование данных. Сейчас же нам достаточно уметь распаковывать пакеты, чтобы устанавливать дополнительные программы и утилиты сторонних разработчиков.
rpm
В настоящее время большинство программ поставляются уже не в исходных кодах, а в виде RPM-пакетов. Их установка намного проще, т.к. программы в них уже скомпилированы. Если вы используете МС, то выберите RPM-пакет и нажмите клавишу . Таким образом вы войдете в него как в директорию и увидите содержимое.
Каждый пакет обязательно содержит исполняемый файл install. Запустите его для установки программы.
Если вы не используете МС, то для установки нового пакета можно выполнить команду:
rpm -i пакет
Для обновления уже установленного пакета можно выполнить команду с параметром
-U
:
rpm -U пакет
Для того чтобы видеть ход инсталляции, можно указать еще и ключ
-v
. Таким образом, команда установки будет выглядеть следующим образом:
rpm -iv пакет
which
Иногда необходимо знать каталог, в котором расположена программа. Для этого используется команда
which
с именем программы в качестве параметра, которая проверит основные каталоги, содержащие исполняемые файлы. Например, чтобы определить, где находится программа просмотра содержимого каталогов ls
, выполните следующую команду:
which ls
В результате вы увидите путь /bin/ls. Если ваша ОС поддерживает псевдонимы (alias) команд, то можно будет увидеть и его. Таким образом, после выполнения команды на экране выведется:
alias ls='ls -color=tty' /bin/ls
3.1.2. Безопасность файлов
В гл. 4 мы будем подробно говорить о правах доступа. Это основа обеспечения безопасности, но и только, и надеяться на это нельзя. Необходимы дополнительные инструменты сохранения целостности системы, или, по крайней мере, вы должны следить за изменениями основных объектов ОС — файлами. В них хранится информация, а именно она необходима взломщикам. Хакеры стремятся прочитать, изменить или даже уничтожить информацию, поэтому вы должны уметь ее контролировать.
Дата изменения
Самый простейший способ контроля — наблюдение за датой редактирования. Допустим, что взломщик проник в вашу систему в 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. Для этого выполните следующую команду:
Интервал:
Закладка: