- •В.В. Бакланов
- •Защитные механизмы
- •Операционной системы
- •Екатеринбург
- •Оглавление
- •Введение
- •1. Пользователи и их права
- •Учетные записи пользователей и работа с ними
- •Video::18:
- •Ivanov:X:1002:101::/home/ivanov:/bin/bash
- •1.2. Процедура регистрации и ее безопасность
- •VI /etc/passwd
- •Initrd /boot/initrd.Img–2.6.18–5–686
- •Права доступа к файлам
- •Комбинированные права доступа
- •1.5. Решение практических задач на разграничение доступа
- •Использование механизма sudo
- •2. Безопасное управление процессами
- •2.1. Общие сведения о процессах
- •Virtual memory (kbytes, -V) unlimited
- •2.2. Средства наблюдения за процессами
- •2.3. Переменные окружения
- •2.4. Способы автоматического запуска и остановки программ
- •Id:3:initdefault:
- •Id:3:initdefault:
- •2.5. Периодически запускаемые процессы
- •2.6. Запуск и остановка программ в интерактивном и фоновом режимах
- •2.7. Средства взаимодействия между процессами
- •2.8. Перенаправление ввода/вывода
- •2.9. Файловая система /proc как «зеркало» процессов
- •2.10. Терминальный режим и консольные атаки
- •16:10:12 Up 15 min, 4 users, load average: 0,00, 0,00, 0,01
- •Ivanov tty2 - 16:07 3:08 0.01s 0.01s -sh
- •Ivanov tty2 2008-11-05 16:07
- •2.11. Сокрытие процессов
- •2.12. Аудит событий и его безопасность
- •3. Работа с объектами файловой системы
- •3.1. Действия над обычными файлами
- •3.2. Работа со специальными файлами устройств
- •255 Heads, 63 sectors/track, 19457 cylinders, total 312581808 sectors
- •255 Heads, 63 sectors/track, 91201 cylinders, total 1465149168 sectors
- •255 Heads, 63 sectors/track, 38913 cylinders, total 625142448 sectors
- •16 Heads, 32 sectors/track, 988 cylinders, total 505856 sectors
- •3.3. Монтирование файловых систем
- •3.4. Копирование и запись данных
- •2,0,0 200) 'Ata ' 'wdc wd3200bevt-2' '11.0' Disk
- •1000,0,0 100000) 'Hl-dt-st' 'dvdram gma-4082n' 'pt06' Removable cd-rom
- •3.5. Использование «жестких» и символических ссылок
- •4. Безопасность файловых систем ext*fs
- •4.1. Архитектура файловых систем ext*fs
- •Inode count: 438048
- •Inodes per group: 8112
- •Inode blocks per group: 507
- •Inode: 131329 (0x00020101)
- •Indirect block:
- •131329 Drwxr-xr-X 2 root root 4096 Мар 18 17:42
- •Inode: 527744 (0x00080d80)
- •Indirect block:
- •0X024f9040 73 79 6e 63 0a 00 00 00 : 00 00 00 00 00 00 00 00 sync............
- •4.2. Временные отметки файлов
- •4.3. Алгоритмы логического удаления и восстановления файлов
- •Сетевые возможности операционных систем linux
- •5.1. Контроль и настройка сетевых интерфейсов
- •Inet addr:192.168.0.4 Bcast:192.168.0.255 Mask:255.255.255.0
- •Interrupt:5 Base address:0x4000
- •Inet addr:127.0.0.1 Mask:255.0.0.0
- •Ifconfig eth0 -arp
- •Inet addr:192.168.0.4 Bcast:192.168.0.255 Mask:255.255.255.0
- •Interrupt:5 Base address:0x4000
- •Ifconfig eth0 promisc -arp
- •Iwconfig ath0 mode adhoc channel 1 essid “abcd”
- •5.2. Разведка сети
- •5.3. Перехват и анализ сетевого трафика
- •Лабораторный практикум
- •Общие требования
- •Памятка обучаемым
- •Выполнение работы
- •Лабораторная работа № 2 «Исследование архитектуры файловых систем ext*fs»
- •Контрольные вопросы
- •Контрольные вопросы
- •Лабораторная работа № 4 «Реализация политики разграничения доступа средствами ос Linux»
- •Временная нейтрализация парольной защиты
- •Контрольные вопросы
- •Лабораторная работа № 5 «Исследование процессов в ос Linux» Подготовка к работе
- •Наблюдение за файловой системой /proc
- •Просмотр и анализ информации о процессах
- •Управление процессами
- •Работа с консолями
- •Работа с каналами
- •Исследование опасных команд
- •Контрольные вопросы
- •ЛаборАторная работа № 6 «Исследование сетевых возможностей ос Linux»
- •Ifconfig eth0 –arp
- •Контрольные вопросы
- •Лабораторная работа № 7 «Исследование беспроводной сети WiFi под управлением ос Linux»
- •Interrupt:19
- •Inet addr:127.0.0.1 Mask:255.0.0.0
- •Iwconfig ath0 channel 1 essid "abcd"
- •Iwlist ath1 scan
- •Iwconfig ath0 key off
- •Iwconfig ath0 key 0123-4567-89ab-cdef
- •Контрольные вопросы
- •Лабораторная работа № 8 «Наблюдение и аудит в ос Linux»
- •Библиографический список
5.3. Перехват и анализ сетевого трафика
Утилита tcpdump является мощнейшим средством перехвата и анализа сетевого трафика. Эта универсальная утилита для прослушивания моноканала присутствует почти во всех дистрибутивах Linux, а для ее запуска необходимы права суперпользователя. Команда автоматически переводит сетевой адаптер в режим захвата всех пакетов в моноканале, но отображает только отфильтрованные пакеты.
tcpdump <параметры> <параметры_фильтрации>
Утилиту можно запустить без аргументов с помощью одноименной команды. В этом случае один (или единственный) сетевой интерфейс переводится в режим беспорядочного захвата пакетов, а текстовая информация о заголовках перехваченных пакетов выводится на экран. Это не очень удобно, так как приход каждого нового пакета сопровождается, как минимум, одной новой строкой, а при их обилии продуктивное чтение и анализ трафика становятся невозможными.
Утилита очень богата возможностями, и в ее командной строке предусмотрено несколько десятков параметров. Рассмотрим наиболее важные из них.
-
С помощью параметра -w <имя_файла> производится запись перехваченной информации в файл специального формата. Прочитать такой файл с выводом информации на экран можно только с помощью tcpdump, задав для этого аргумент -r <имя_файла>. В то же время отфильтрованные утилитой данные можно сохранить в обычном текстовом файле, используя перенаправление вывода «>».
-
По умолчанию в каждом пакете захватывается для анализа 68 байтов. Почему выбрано именно это число? Заголовок канального уровня (Ethernet–кадр) состоит из 14 байтов. Минимальные размеры заголовков IP и TCP пакетов составляют по 20 байтов. Еще 14 байтов отводится для распознавания инкапсулированного пакета прикладного уровня. Для явного задания длины «отрезаемой» для анализа части пакета в байтах служит аргумент -s <длина_пакета>. В случае необходимости перехвата всего пакета (это может посягать на конфиденциальность передаваемых данных!) его длина задается равной 1514 байтов (14 байтов заголовка кадра Ethernet + 1500 байтов как максимальный размер вложимого кадра).
-
Число перехваченных пакетов можно ограничить путем задания аргумента -c <число_пакетов> с завершением работы после выполнения задания.
-
При наличии в составе компьютера нескольких сетевых интерфейсов аргумент -i <интерфейс> позволяет определить тип сетевого адаптера (например, –i eth1) или модема (–i ppp1), с помощью которого производится перехват пакетов. Если физические интерфейсы будут заняты в сетевом обмене, для перехвата данных можно задействовать логический интерфейс обратной петли lo.
-
По умолчанию заголовок канального уровня не перехватывается, и внешним является IP–пакет. Для перехвата заголовка кадра Ethernet с MAC–адресами передатчика и приемника необходимо указать параметр -е.
-
Для вывода более подробной текстовой информации можно воспользоваться аргументами -v, -vv, -vvv. Стандартный формат текстовой строки анализатора может включать следующие поля:
-
отметку времени перехвата, в которой три пары цифр, разделенных двоеточиями, указывают часы, минуты и секунды, а последние шесть цифр – дробную часть секунды,
-
доменное имя или IP–адрес хоста–отправителя,
-
номер порта получателя,
-
обозначение установленных битовых флагов TCP–заголовка, которые несут информацию об этапе в установлении сеанса,
-
начальный и конечный (через двоеточие) порядковые номера TCP–сегмента, а также (в скобках) – число переданных байт,
-
размер TCP–окна в байтах.
-
Для отображения заголовков и содержимого пакетов в шестнадцатеричном коде служат аргументы -х (–xx). Если возникает потребность в отображении содержимого пакетов в шестнадцатеричных и ASCII– кодах, можно воспользоваться аргументом –X.
<параметры фильтрации> используют несколько ключевых слов:
-
протокол (proto) – указывает, какие именно пакеты подлежат перехвату. Среди часто используемых можно указывать ключевые слова: ether, ip, arp, rarp, tcp, udp, icmp, ip6,
-
направление – указывает источники и получателей сообщений: src (source – источник), dst (destination – получатель) или их комбинации: src or dst или src and dst,
-
объекты прослушивания, к которым могут относиться:
host (номер или имя) – сетевой узел, являющийся источником или получателем сообщений,
net (сетевая часть адреса) – локальная сеть или ее часть,
port – номер или символическое обозначение службы, указанной в таблице /etc/services.
В параметры фильтрации могут входить математические выражения. Например, ‘ip[6:2] & 0x1FFF == 0’ условия фильтрации выполняются, если результат побитового логического умножения 6-го и 7-го байтов заголовка пакета с маской 0x1FFF равен нулю. Ключевые слова и математические выражения могут объединяться с использованием логических условий: not, and и or.