Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

RCv2

.pdf
Скачиваний:
53
Добавлен:
14.04.2015
Размер:
997.9 Кб
Скачать

Контрольные вопросы

1.Что такое статический и динамический IP-адреса.В чём их разница.

2.В чём заключается метод сканирование протоколов IP.

3.На какие пакеты большинство ОС должны ответить флагом

RST.

4.Обязательная цепочка прохождения пакета в Netfilter.

Лабораторная работа №5

Изучение Honeypot.

Цель работы:

1.Изучить работу Honeypot

2.Изучить работу farpd

Теоретические основы лабораторной работы

Одной из самых актуальных проблем современности является проблема обеспечения информационной безопасности. Казалось бы, существует огромное количество различных средств защиты, совершенствующихся день за днем. Однако ни одна, даже самая совершенная, система защиты не сможет гарантировать абсолютной безопасности данных, так как незначительных уязвимостей избежать в принципе невозможно.

Противостояние злоумышленников и системных администраторов продолжалосьдостаточнодолго.Универсальнымметодомсканирования стал Nmap, изученный в прошлой лабораторной работе. Ответом на появление Nmap стало появление Honeypot.

Honeypot («Ловушка») - ресурс, представляющий собой приманку для злоумышленников.

Фактически основная задача Honeypot — подвергнуться атаке или несанкционированному сканированию с целью изучения стратегии и методов сканирования и определения перечня средств, необходимых для предотвращения будущих атак. Суть работы Honeypot заключается в создании ловушек — образов систем, которые извне воспринимаются как полноценные машины с установленными на них операционными системами, а, следовательно, поддающиеся сканированию.

Использование Honeypot имеет практический и исследовательский смысл. Во-первых, если на сервере установлена хорошая система

 

защиты, долгое время можно не замечать постоянных попыток

30

сканирования — Honeypot укажет на их наличие. Во-вторых,

 

серьезной проблемой специалистов по информационной безопасности является нехватка информации о методах и средствах, используемых злоумышленниками. Единственное, что позволяет получить информацию об этих средствах — испытание их действия на себе. И Honeypot является чуть ли не идеальным способом для этого, ведь в настоящее время этом точно известно: грамотно настроенный Honeypot практически невозможно распознать.

Итак, перейдем непосредственно к выполнению лабораторной работы. Следует отметить, что в условиях, в которых проводится лабораторная работа, придется отойти от реальной ситуации, когда хакеру неизвестно ничего о том, что из себя представляет сервер и не являются ли подключенные к нему машины всего лишь ловушками. Иными словами, нам будут известны ip-адреса сканируемых ловушек.

Для начала необходимо создать локальную сеть из двух машин. Рекомендуется использовать машины с установленными на них операционными системами Ubuntu Server. Далее необходимо разобраться непосредственно с ловушками.

 

[

 

 

 

Hacker

 

Server

 

 

 

[

[

[

 

 

 

 

Ловушка 1

Ловушка 2 Ловушка N

Рисунок 3. Сеть для тестирования ловушек

Получив у преподавателя конфигурационный файл, откройте его и ознакомьтесь с содержимым. Оно представляет собой набор записей, обозначающих определенные свойства некоторых операционных систем. Этот файл необходимо перенести на сервер. Сделать это можно несколькими способами: либо через файлообменник в сети Интернет, либоспомощьюобщейпапкисхостом,либо,есливывсежеустановили систему с графической оболочкой, по сути любым известным вам методом.

Далее на машину Hacker (рис. 3) необходимо установить Nmap, либо в случае с операционной системой с графической оболочкой, Zenmap.

Послеэтогоможнопереходитьксканированию.Однаконанекоторых машинах может появиться проблема: ни одна из ловушек не видна ни хостовой операционной системе, ни хакеру, ни самому серверу. В этом случае на помощь приходит команда arp, выполняемая с Terminal

хостовой машины. Синтаксис:

 

arp -s [ip-адрес ловушки] [mac-адрес адаптера]

 

Mac-адрес можно легко узнать либо в настройках VirtualBox,

 

либо с помощью команды ifconfig. То же самое необходимо

31

сделать и с машиной хакера.

После этого на сервере необходимо запустить Honeypot либо с записью информации о работе в log-файл, либо без неё (см. ниже), а затем — попросту ждать. При этом осуществляется сканирование ipадресов (либо отдельных, либо интервала) с помощью средств Nmap. Результаты необходимо оформить в отчет.

honeyd -d -f [путь к файлу honeypot.conf]

honeyd -d -f [путь к файлу honeypot.conf] -l [путь к log-файлу]

Порядок выполнения работы

1.Настроить сеть из двух машин

2.Настроить Honeypot

3.Произвести сканирование сервера

Описание лабораторной установки

1.Установленный VirtualBox

2.Ubuntu установленная на VirtualBox

3.Установка дополнительных пакетов не требуется

Оформление отчета

Отчет к лабораторной работе должен включать в себя следующие элементы:

1.Скриншоты работы каждой изученной команды

2.Комментарии к каждому скриншоту

3.Ответы на контрольные вопросы

Контрольные вопросы

1.Назначение, цели, описание Honeypot.

2.Какие цели может преследовать злоумышленник, взламывая сервера?

3.Какое наказание предусмотрено в РФ за взлом?

Лабораторная работа №6

Работа с утилитой fdisk

Цель работы:

Получение теоретических и практических навыков восстановления таблицы разделов и их данных.

Теоретические основы лабораторной работы Часть 1. Введение. Изучение иерархии файловой системы.

 

 

 

Самый известный инструмент для работы с таблицей

32

разбиения - программа fdisk. Это семейство утилит для работы

с разделами жесткого диска. Очень распространенная, имеется почти в каждой операционной системе. Но, несмотря на одинаковое название, это разные программы и следственно работают по-разному.

Происхождение fdisk теряется во мраке веков, уходя во времена первых UNIX для PC-архитектуры. Раньше необходимости в ней не было, а главными инструментами дисковой разметки были утилиты типа disklabel или bsdlabel.

Запусккомандыfdiskвозможентолькосправамисуперпользователя, даже для обычного просмотра информации о диске.

Если команду fdisk запустить без опций и аргументов, она выведет на экран краткую справку о ее использовании.

В качестве аргумента команды используется имя файла устройства. Как известно, в современных версиях ядра Linux все диски, вне зависимости от интерфейсов (PATA, SATA, SCSI, SAS, USB) определяются единой подсистемой ATA-SCSI, на самом деле имена эти будут иметь вид /dev/sda, /dev/sdb и так далее.

Существуют следующие опции команды fdisk:

l - получить информацию о диске и его разделах, без каких-либо дествий;

b - задать размер блока — единицы измерения дискового пространства; по умолчанию, без указание этой опции, он равен физическому блоку (512 байт), а прочие возможные значения кратны его размеру — 1024, 2048 или 4096 байт;

u - запустить fdisk, являясь опцией по умолчанию.

Дляначалапосмотримкакработаетfdiskсточкизренияинформации, для чего запустим её, используя опцию -l:

# fdisk -l /dev/sd?

Ответом будет вывод примерно такого вида:

Disk /dev/sdb: 170.0 ГБ, 160052776969 байт 255 heads, 63 sectors/track, 18745 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes

Disk identifier: 0x0008e008

 

 

Device Boot

Start

End

Blocks

Id System

/dev/sdb1

1

14

112423+ 83 Linux

/dev/sdb2

15

15680

125837145

5 Расширенный

/dev/sdb5

15

2626

20980858+ 83 Linux

/dev/sdb6

2627

4585

15735636

83 Linux

Чтобы получить аналогичные сведения для всех физических дисков используемой машины, можно пропустить аргумент команды. 33

После чего будет получена следующая информация: общая информация о диске (его размер, число головок, число секторов, число цилиндров), для каждого существующего раздела на диске указываются его первый и последний цилиндры (при чем символом + маркируются разделы, не занимающие последний цилиндр полностью), размер в блоках, идентификатор типа файловой системы, а также название.

Для выполнения каких-либо действий с дисковыми разделами команду fdisk необходимо запускать в интерактивном режиме:

# fdisk /dev/sdb

Это можно сделать и использования опций, однако указание аргумента тут будет обязательным.

После этого мы получаем интерфейс, ждущий ввода необходимой команды. Для того, чтобы получить весь список команд, необходимо вызвать команду m..

a - устанавливает признак загрузочного раздела d - удаляет раздел

l - показывает список известных типов раздела m - выводит это меню

n - добавляет раздел

p - выводит таблицу разделов

q - выходит без сохранения изменений

t - позволяет сменить системный идентификатор раздела v - проверяет таблицу разделов

w - записывает таблицу разделов на диск и выходит

x- использует дополнительные возможности, которые необходимы опытнмпользователям.

При создании раздела средствами fdisk сначала определяется, будет он первичным (primary) или расширенным (extended). В первом случае простоуказываетсяномерраздела(от1до4).Номерможетбытьлюбым, также можно сначала создавать раздел 2, а потом 1, или весь диск отвести под раздел 4. Номер раздела остается навсегда: именно он будет идентифицировать файл устройства, соответствующий созданному разделу (например, /dev/sda2, или /dev/sdb1).

Далее задается начальный сектор создаваемого раздела (по умолчанию - первый свободный, для пустого диска - просто первый).

34

Однако 35 никто не мешает указать любой другой сектор

 

в качестве стартового, при условии использования неразбитого пространства. А потом - конечный сектор (по умолчанию - последний физический на неразбитом дисковом пространстве), или просто размер раздела, например, +300M;

Выглядеть это может следующим образом:

Command (m for help): n Partition type:

p primary (1 primary, 1 extended, 2 free) l logical (numbered from 5)

Select (default p): p

Partition number (1-4, default 3): 3

First sector (39845888-41943039, default 39845888): Using default value 39845888

Last sector, +sectors or +size{K,M,G} (39845888-39847933, default 39847933):

Using default value 39847933

При создании расширенного раздела сначала все происходит точно также -задание номера (очевидно, что в том же диапазоне 1-4), указание начального сектора и конечного (или объема в мегабайтах).

Затем необходимо поделить расширенный раздел на разделы логические, поэтому при следующей команде для создания раздела предлагается выбор между первичным (если число последних еще не исчерпано) и логическим (так как второй extend- ed-раздел средствами fdisk создать нельзя):

Command (m for help): n Command action

l logical (5 or over)

p primary partition (1-4)

Дальше логический раздел создается так же, как первичный. Также, для каждого создаваемого средствами fdisk раздела по

умолчанию устанавливается идентификатор типа файловой системы Linuxnative(83вшестнадцатеричномисчислении),арасширенныйраздел автоматическиполучаетидентификатортипа -5. Однакоэти типымогут изменяться. Например, при создании раздела подкачки необходимо изменитьтипраздела.Этопотребуетсятакжеидляиспользованиятаких технологий, как Software RAID или LVM, о которых будет говориться

позднее.

35

 

Чтобы это сделать, можно воспользоваться командой t, после чего запрашивается номер раздела, тип которого должен быть изменен, а затем - идентификатор нужного типа. Полный список поддерживаемых типов файловых систем (и их идентификаторов) выводится командой l. Необходимо учитывать, что идентификатор типа файловой системы раздела - это не файловая система, размещаемая на нем. На разделе Linux native, если судить по названию, можно создать любую файловую систему из числа тех, которые поддерживаются Linux в качестве

"родных" (ext2/ext3, ext4, XFS, ReiserFS, JFS, btrfs, NILFS2).

Средства fdisk позволяют присвоить созданному разделу идентификатор типа почти любой из существующих файловых систем - от FAT12 до Free-, Open- и NetBSD. Однако сами по себе файловые системы средствами fdisk не создаются, и для разделов чуждого типа в необходимо их форматирование (в терминах DOS): либо в родной среде (например, DOS-командой FORMAT для FAT-раздела), либо специальными командами типа mkfs.

С помощью fdisk можно выявить раздел строго определенного размера и точно размещать его на диске. Также есть возможноть резервирования в любом месте накопителя неразбитого пространства, с двух сторон окруженного созданными разделами.

Часть 2. Утилиты для восстановления таблицы разделов.

Основнойпричиной обращениякутилитамвосстановлениятаблицы разделов может стать невозможность чтения диска, ведь чаще всего это может произойти из-за повреждения этой таблицы. В таком случае не стоит сразу использовать программы переразбиения типа fdisk - ведь существует вероятность, что таблицу разбиения еще возможно восстановить.

Для этого в ОС Linux существуют специальные программные средства,такиекакпрограммаTestDisk,предназначеннаядлятого,чтобы восстанавливать потерянные разделы, восстанавливать возможность загрузки с диска, на котором произошел сбой в работе программного обеспечения, из-за вируса или человеческих ошибок (например, если пользователь случайно затер таблицу разделов). Она позволяет проанализировать структуру диска и найти потерянные разделы и, если это необходимо, восстановить таблицу разделов.

 

TestDisk может быть запущена

 

%% под DOS (как в "чистом" ДОС, так и окне под Win9x),

 

%%

под Windows (NT4 / 2000 / XP / 2003),

36

%%

под Linux или FreeBSD.

 

 

Программа может отыскать потерянные разделы с файловыми системами следующих типов:

%% BeFS ( BeOS )

%% DOS/Windows FAT12, FAT16 and FAT32 %% Ext2 and Ext3 ( Linux)

%% Linux Swap (версий 1 и 2)

%% Netware (только старых версий)

%% NTFS ( Windows NT/2K/XP ) %% ReiserFS (версий 1 и 2)

%% UFS ( FreeBSD/OpenBSD/NetBSD ) %% JFS

Как сообщает краткая справка к программе, запускается она в одном из следующих форматов.

testdisk [/log] [/debug] [/dump] testdisk /list [/log]

Будучи запущенной с опцией /list, команда просто выводит список существующих разделов (точнее, видимо, содержимое таблиц разделов из MBR) на всех жестких дисках. Во всех остальных вариантах после запуска программы TestDisk выводит вначале фразу "Please wait..." и приступает к сбору данных от BIOS или OS.

Опции (необязательные) /log, /dump и /debug имеют следующее назначение:

%% /log - создавать файл протокола работы программы (его имя testdisk.log);

%% /debug - добавлять отладочную информацию;

%% /dump - отображать на экране и записывать в протокол содержание найденных начальных секторов разделов.

В документации к программе рекомендуется запускать ее с опциями /log и /debug. В любом варианте запуска программы вначале выводится список дисков, обнаруженных в системе.

Порядок выполнения работы

1. Запустить fdisk и создать таблицу разделов.

2. Создать на каждом разделе файловую систему

3. Смонтировать один из разделов

4. Записать на него некоторую информацию.

5. Сохранить таблицу разделов в отдельный файл (для последующего восстановления). Проверить содержимое файла.

6. Удалить один из разделов.

37

7.Вернуть раздел и проверить целостность данных.

8.Удалить все разделы с диска.

9.Запустить testdisk и восстановить таблицу разделов.

10.Через fdisk проверить результат.

11.Записать изменения и смонтировать раздел с файлами.

12.Удалить некоторые файлы и восстановить их через testdisk.

Описание лабораторной установки

1.Установленный VirtualBox

2.Ubuntu установленная на VirtualBox

3.Установка дополнительных пакетов не требуется

Оформление отчета

Отчет к лабораторной работе должен включать в себя следующие элементы:

1.Скриншоты работы каждой изученной команды

2.Комментарии к каждому скриншоту

3.Ответы на контрольные вопросы

Контрольные вопросы

1.Положительныеиотрицательныестороныиспользованияfdisk?

2.Назначение утилиты TestDisk.

3.Какой сектор является стартовым?

4.Что позволяют зафиксировать опции /log и /debug, привести примеры.

Лабораторная работа №7

RAID-массивы

Цель работы:

Получение теоретических и практических навыков построения RAID массивов

Теоретические основы лабораторной работы Часть 1. Введение.

RAID (Redundant Array of Independent Disks - избыточный массив независимых жестких дисков) - массив, сотоящий из нескольких дисков, управляемых программным или аппаратным контроллером, связанных между собой и воспринимаемых как единое целое. В зависимости от того, какой тип массива используется, может обеспечивать различные степени быстродействия и отказоустойчивости. Служит для повышения

недёжности хранения данных и/или для повышения скорости 38 чтения/записи информации (RAID 0).

Калифорнийский университет в Беркли предложил следующие уровни спецификации RAID, которые являются стандартом во всем мире:

%% RAID 0 представлен как дисковый массив повышенной производительности, без отказоустойчивости.

%% RAID 1 определен как зеркальный дисковый массив %% RAID 2 массивы, в которых применяется код Хемминга

%% RAID 3 и 4 используют массив дисков с чередованием и выделенным диском четности.

%% RAID 5 используют массив дисков с чередованием и "невыделенным диском четности".

%% RAID 6 используют массив дисков с чередованием и двумя независимыми "четностями" блоков.

%% RAID 10 - RAID 0, построенный из RAID 1 массивов %% RAID 50 - RAID 0, построенный из RAID 5 массивов %% RAID 60 - RAID 0, построенный из RAID 6 массивов

Часть 2. Основные команды для работы с RAID-массивами

fdisk - общее название системных утилит для управления разделами жёсткого диска (смотрите лабораторную работу №6).

watch-команда,котораяпозволяетследитьзаизменениямиввыводе команды

mdadm - утилита для работы с программными RAID массивами Режимы:

%% -A, --assemble - режим сборки %% -B, --build - режим построения %% -C, --create - режим создания

%% -F, --follow, --monitor - режим наблюдения %% -G, --grow - режим расширения

%% -I, --incremental - режим инкрементальной сборки

mkfs - команда используется для создания файловой системы Linux на некотором устройстве хранения инфорации, обычно в разделе жёсткого диска.

mount - данная утилита предназначена для монтирования файловых систем.

touch - команда позволяет создавать новые файлы.

ls- стандартная команда вывода информации о файлах или каталогах

39

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]