Отчеты по лабораторным работам по дисциплине - Сети ЭВМ - файл n1.doc

Отчеты по лабораторным работам по дисциплине - Сети ЭВМ
Скачать все файлы (485.1 kb.)

Доступные файлы (4):
n1.doc286kb.12.05.2010 01:37скачать
n2.doc266kb.12.05.2010 01:38скачать
n3.doc52kb.12.05.2010 01:39скачать
n4.doc398kb.12.05.2010 01:39скачать

n1.doc

МИНИСТЕРСТВО ОБЩЕГО И ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ

МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ ИНСТИТУТ

РАДИОТЕХНИКИ, ЭЛЕКТРОНИКИ и АВТОМАТИКИ
Отчет по

лабораторной работе № 1

По дисциплине: «Сети ЭВМ»

По теме «Анализ трафика компьютерной сети c помощью снифферов»
Выполнил:

Студент Ф-та Кибернетики
группы:

Москва

2009 г.


Цель работы:

Приобретение практических знаний и навыков в перехвате и анализе трафика сегмента компьютерной сети.

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

Студент получает задание на анализ трафика локальной сети с заданным условием фильтрации пакетов. Условиями пере­хвата могут быть, например, только TCP/IP-пакеты, диапазон просматривае­мых IP-адресов, просмотр направленных к конкретному порту пакетов (HTTP – обычно порт 80, FTP – 21, SMTP – 25, SSL – 443, ICQ – 4000 и др.), задан­ные сочетания символов (USER, PASS, LOG и др.); при этом в сети должны действительно циркулировать указанные пакеты (пакеты ARP- и EtherNet 802.3 обычно присутствуют всегда, осуществляя поддержку сети).

Отфильтрованные пакеты накапливаются в CAP-файле и в дальнейшем анализируются утилитой PeepNet, корректность перехвата и анализа прове­ряется преподавателем.
Теоретическая часть

Снифферы (дословный перевод - ‘вынюхиватели’) являются специализированным ПО, предназначенным для анализа потока со­общений (трафика) компьютерной сети передачи информации . Известны­ми системами подобного рода (но глобального уровня) являются ЭШЕЛОН (североамериканский проект, назначением которого является анализ содер­жимого линий связей Европы) и СОРМ (тотальное протоколирование трафи­ка русскоязычной Сети). Большинство программ и сервисов (ICQ, TelNet, FTP, HTTP, POP3 и т.д.) пересылают пароль и логин пользователя открытым текстом (без всякой кодировки и шифровки), и работающий сниффер без труда позволит перехватывать такие сессии.

К простым ПО подобного класса относится, например комплект SpyNet; в штатную поставку Windows’NT Server и др. входит утилита Network Monitor (устанавливается добавлением сервиса Net­work Monitor Tools & Agent).

Обычно сетевая карта, работающая в сегменте некоммутируемой Ethernet в принципе ‘прослушивает’ весь трафик своего сегмента; однако в нормаль­ном (без PROMISCUOUS MODE) режиме анализируются лишь первые 48 бит заголовка пакета и, если не найден собственный MAC-адрес, карта перестает читать ‘чужой’ пакет. Функциональность сниффера достигается переводом сетевой карты в режим PROMISCUOUS MODE, обеспечивающий перехват всех сообщений, циркулирующих в данном сегменте сети безотносительно MAC-адресов (достигается программной установкой соответствующего бита управляющего регистра карты). В случае коммутируемого Ethernet перевод карты в PROMISCUOUS MODE не позволяет прослушивать ‘чужие’ сообще­ния, в этом случае используется технология ‘ARP-спуфинга’ (путем соответ­ствующей подделки ARP-сообщений данная сетевая карта ‘притворяется’ маршрутизатором с MAC-адресом, однако, данной карты), при этом трафик всех составляющих сегмент сети насильственно направится в сторону карты-обманщика.

Ниже приведен максимально упрощенный исходный текст небольшой про­граммы - сниффера для Unix/Linux.

/* cниффер пишет на stdout все, что захватывает */

#include #include #include

#include #include #include

static volatile int done;

void

handler(int signum) {

done = 1; } /* конец HANDLER */

int

main(int argc, char **argv) {

char buff[0x10000]; struct ifreq ifr; int s, n; if (argc < 2)

{

fprintf(stderr, "Usage: %s \n", argv[0]);

return 1;

}

s = socket(PF_INET, SOCK_PACKET, htons(0x0003)); if (s == -1) {

perror("socket");

return 1; }

strcpy(ifr.ifr_name, argv[1]); if (ioctl(s, SIOCGIFFLAGS, &ifr) < 0) {

perror("ioctl(SIOCGIFFLAGS)");

return 1; }

/**********************************************************************************************/

ifr.ifr_flags |= IFF_PROMISC; /* установка режима перехвата */

/* ВСЕХ пакетов, поступающих */ /* на сетевую карту*/

if (ioctl(s, SIOCSIFFLAGS, &ifr) < 0) {

perror("ioctl(SIOCGIFFLAGS)");

return 1; }

signal(SIGINT, handler); puts("starting capturing:\n");

fflush(stdout);

for (done = 0; !done; )

{

n = read(s, buff, sizeof(buff)); /* cчитываем перехваченный трафик в буфер buff */

if ( n!=-1 ) write(STDOUT_FILENO, buff, n); }

ifr.ifr_flags &= ~IFF_PROMISC; /* снятие режима перехвата всех пакетов */

if (ioctl(s, SIOCSIFFLAGS, &ifr) < 0) {

perror("ioctl(SIOCGIFFLAGS)");

return 1; }

close(s);

printf("Finished\n"); return 0; }

/* конец MAIN */

Один из примеров выдачи (определенным образом скомпонованной) ин­формации сниффером приведен ниже; распечатка содержимого перехвачен­ного пакета (датаграммы) состоит из разделенных двоеточием трех колонок: формат пакета-носителя, имя поля, содержимое поля в десятичном и восьме­ричном представлении. Этот пакет содержит 14-байтовый заголовок EtherNet, 20-байтовый IP-заголовок, 20-байтовый TCP-заголовок, заголовок HTTP, оканчивающийся двумя подряд CRLF (0D 0A 0D 0A) и далее собст­венно данные прикладного уровня (WEB-трафик по протоколу HTTP версии 1.1):

ETHER: Destination address: 0000BA5EBA11 ETHER: Source address: 00A0C9B05EBD ETHER: Frame Length: 1514 (0x05EA) ETHER: Ethernet Type: 0x0800 (IP)

IP: Version = 4 (0x4)

IP: Header Length = 20 (0x14)

IP: Service Type = 0 (0x0)

IP: Precedence = Routine

IP:...0.... = Normal Delay

IP:....0... = Normal Throughput

IP: 0.. = Normal Reliability

IP: Total Length = 1500 (0x5DC)

IP: Identification = 7652 (0x1DE4)

IP: Flags Summary = 2 (0x2)

IP: 0 = Last fragment in datagram

IP: 1. = Cannot fragment datagram

IP: Fragment Offset = 0 (0x0) bytes

IP: Time to Live = 127 (0x7F)

IP: Protocol = TCP — Transmission Control

IP: Checksum = 0xC26D

IP: Source Address = 10.0.0.2

IP: Destination Address = 10.0.1.201

TCP: Source Port = Hypertext Transfer Protocol

TCP: Destination Port = 0x0775

TCP: Sequence Number = 97517760 (0x5D000C0)

TCP: Acknowledgement Number = 78544373 (0x4AE7DF5)

TCP: Data Offset = 20 (0x14)

TCP: Reserved = 0 (0x0000)

TCP: Flags = 0x10:.A....

TCP:..0 = No urgent data

TCP:...1.... = Acknowledgement field significant TCP:....0... = No Push function

TCP: 0.. = No Reset

TCP: 0. = No Synchronize

TCP: 0 = No Fin

TCP: Window = 28793 (0x7079) TCP: Checksum = 0x8F27 TCP: Urgent Pointer = 0 (0x0)

HTTP: Response (to client using port 1909)

HTTP: Protocol Version = HTTP/1.1

HTTP: Status Code = OK

HTTP: Reason = OK

...и так далее...

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

Обычно сниффер можно настроить на ‘прослушку’ пакетов по заранее оп­ределенным протоколам, портам, диапазону IP, направлению передачи и др.; допустимо указывать ‘горячие’ сочетания символов (слова и словосочетания, наличие которых является признаком подготовки определенного действия – например, атаки на конкретный хост с целью его разрушения или взятия под контроль, договоренности о теракте и т.п.).

Области применения снифферов можно разделить на легальные - отладка ПО сетевого класса, обучение, оптимизация сети (обнаружение проблем и ‘узких мест’), выявление несанкционированных атак на сервера Сети и неле­гальные - перехват важной информации (в первую очередь паролей и login’ов пользователей). Стандартным нелегальным приемом использования сниффера является запуск его на целевом сервере (после удачного root-входа) в скрытом режиме (например, маскируясь под named-канал) и несанкциониро­ванном анализе перехваченной информации. Для предотвращения подобных сценариев используется средства, осуществляющие шифровку трафика (на­пример, протокол SSH).

Анализ вышеприведенной перехваченной информации в реальном случае (анализ многих тысяч пакетов) чрезвычайно затруднен, поэтому разработаны специальные системы для фильтрации и компоновки перехваченного трафи­ка (например, визуализация имеющегося WEB-трафика броузером).

Одной из несложных систем подобного рода является комплект SpyNet, включающий два модуля - CaptureNet (собственно перехват трафика) и PeepNet (фильтрация пакетов и визуальное представление содержимого, рис.1). CaptureNet определяет MAC- и IP-адреса сетевой карты и по нажатию Start сapture переводит ее в выбранный режим (задается набором флажков Hardware Filter); при этом в верхнем правом фрейме окна выводятся парамет­ры каждого захваченного пакета (показываются время, MAC- и IP-источника и адресата, используемый протокол, порт и др.), в правом нижнем фрейме можно просмотреть содержимое выбранного пакета (восьмеричное), при ра­боте CaptureNet записывает отфильтрованные пакеты в файл (по умолчанию CAPTURE.CAP). Заметим, что фактический сброс информации в этот файл происходит в момент превышения объема буфера (задается выбором вариан­тов меню Capture|Settings) или при остановке захвата пакетов нажатием Stop capture).

В окне Software filter (инициализируется кнопкой Modify filter главного окна) задаются параметры фильтрации пакетов: на вкладке Layer 2,3 прото­кол (например, для перехвата IP/TCP-пакетов целесообразно задать Frame IP, Layer 3+ TCP), на вкладке Pattern matching – ключевые слова для поиска в па­кетах, на вкладке IP addreses – диапазон сканируемых адресов и направление трафика, на вкладке Ports - номера контролируемых портов.



Рисунок 1.— Окно Software Filter утилиты CaptureNet v3.12



Рисунок 2.— Окно визуализации перехваченного сообщения утилитой PeepNet v3.12

Утилита PeepNet может быть вызвана из CaptureNet или отдельно, при этом может быть проанализирован любой из захваченных CAP-файлов (File|Open), при этом также возможно установить фильтрацию пакетов (Options|Settings). В правом верхнем фрейме выдается графическое представление информационной части пакета в стиле WEB-страницы, в правом нижнем – текст соответствующего запроса клиентской части (рис.3).

Необходимое оборудование – IBM PC-совместимая ЭВМ, предустановлен­ная ОС Windows, пакеты CaptureNet и PeepNet версии 3.12.
Учебный текст
© perviydoc.ru
При копировании укажите ссылку.
обратиться к администрации