sonyps4.ru

Как работает сниффер. Сниффер – что это такое и зачем он нужен

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

Принцип работы снифферов

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

  • Путем прослушивания в обычном режиме сетевого интерфейса, этот способ дает эффект лишь тогда, когда в определенном поле используются хабы, а не свитчи.
  • Если в место разрыва канала подключить сниффер (sniffers) , то можно перехватить трафик.
  • Адаптер или программа меняют путь трафика и отправляют копию на сниффер.
  • Побочные электромагнитные излучения проанализировать и восстановить трафик для прослушивания.
  • Уровень канала и сети подвергнуть атаке, что перенаправит трафик на сниффер для получения данных, после чего трафик направляется по прежнему маршруту.

Трафик, перехваченный сниффером подвергается анализу, что позволяет выявить:

Обычный снифферы (sniffers) анализирует трафик очень просто, применяя самые доступные автоматизированные средства и способен анализировать лишь очень маленькие объемы.

Примеры наиболее известных снифферов:

  • WinSniffer 1.3 – самый лучший сниффер, обладает множеством разных настраиваемых режимов, способен ловить пароли различных сервисов;
  • CommViev 5.0 ловит и анализирует интернет - трафик, а также локальную сеть. Собирает информационные данные, связанные с модемом и сетевой картой, и подвергает их декодированию. Это дает возможность видеть полный список соединений в сети, статистические сведения по IP. Перехваченная информация сохраняется в отдельный файл, для последующего анализа, к тому же, удобная система фильтрации позволяет игнорировать ненужные пакеты и оставляет только те, которые нужны злоумышленнику;
  • ZxSniffer 4.3 – небольшой по размеру сниффер объемом 333 kb, он помещается на любой современный носитель информации и может быть использован по;
  • SpyNet–достаточно известный и популярный сниффер. В основной функционал входит перехват трафика и декодирование пакетов данных;
  • IRIS- обладает широкими возможностями фильтрации. Способен ловить пакеты с заданными ограничениями.

Классификация снифферов (Sniffers)

Снифферы делят по методу использования на легальные и нелегальные. При этом само понятие снифферы применяется именно по отношению к нелегальному использованию, а легальные называют «Анализатор трафика».

Для того, чтобы получать полную информацию о состоянии сети и понимать, чем заняты сотрудники на рабочих местах используют легальные снифферы (анализаторы трафика). Нельзя переоценить помощь снифферов, когда необходимо «прослушать» порты программ, через которые они могут отсылать конфиденциальную информацию своим хозяевам. Для программистов они помогают проводить отладку и взаимодействие программ. Используя анализаторы трафика можно своевременно обнаружить несанкционированный доступ к данным или проведение DoS-атаки.

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

Анализаторы трафика различаются следующими возможностями:

  • Поддержка протоколов канального уровня, а также физических интерфейсов.
  • Качеством декодирования протоколов.
  • Пользовательским интерфейсом.
  • Предоставлять доступ к статистике, просмотру трафика в реальном времени и др.

Источник угрозы

Работать снифферы могут на:

  • Маршрутизаторе (router) – может анализироваться весь трафик проходящий через устройство.
  • На оконечном узле сети – все данные передаваемые по сети доступны для всех сетевых карт, но в стандартном режиме работы, сетевые карты, для которых не предназначены данные, просто не замечают их. При этом, если перевести сетевую карту в режим promiscuous mode, то появится возможность получать все данные передаваемые в сети. И конечно снифферы позволяют переключаться в этот режим.

Анализ рисков

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

Антисниффер – программное или аппаратное средство работающее в сети и позволяющее находить снифферы.

Используя только лишь шифрование при передаче данных, не удастся скрыть сам факт передачи. Поэтому можно использовать шифрование совместо с антисниффером.

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

Во время работы сниффера сетевой интерфейс переключается в т.н. «режим прослушивания» (Promiscuous mode), что и позволяет ему получать пакеты, адресованные другим интерфейсам в сети.

Перехват трафика может осуществляться:

  • обычным «прослушиванием» сетевого интерфейса (метод эффективен при использовании в сегменте концентраторов (хабов) вместо коммутаторов (свитчей) , в противном случае метод малоэффективен, поскольку на снифер попадают лишь отдельные фреймы);
  • подключением снифера в разрыв канала;
  • ответвлением (программным или аппаратным) трафика и направлением его копии на снифер;
  • через анализ побочных электромагнитных излучений и восстановление таким образом прослушиваемого трафика;
  • через атаку на канальном (2) (MAC-spoofing) или сетевом (3) уровне (IP-spoofing), приводящую к перенаправлению трафика жертвы или всего трафика сегмента на снифер с последующим возвращением трафика в надлежащий адрес.

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

Поскольку в «классическом» снифере анализ трафика происходит вручную, с применением лишь простейших средств автоматизации (анализ протоколов, восстановление TCP-потока), то он подходит для анализа лишь небольших его объёмов.

См. также

Ссылки


Wikimedia Foundation . 2010 .

Смотреть что такое "Sniffer" в других словарях:

    Sniffer - , ein Programm zum unberechtigten Ausspionieren sensibler Daten. Der Sniffer wird in einem Netzwerk installiert und zeichnet wahllos vorüberkommende Datenpakete auf. Bei einer nachfolgenden Analyse können auf diese Weise Daten … Universal-Lexikon

    Sniffer - Ein Sniffer (engl. to sniff‚ riechen, schnüffeln) ist eine Software, die den Datenverkehr eines Netzwerks empfangen, aufzeichnen, darstellen und ggf. auswerten kann. Es handelt sich also um ein Werkzeug der Netzwerkanalyse. Inhaltsverzeichnis 1… … Deutsch Wikipedia

    sniffer - snifer ou sniffer [ snife ] v. tr. <conjug. : 1> v. 1978; de l angl. to sniff « renifler » ♦ Anglic. (arg. de la drogue) Priser (un stupéfiant). ⇒ renifler. Snifer de la cocaïne. N. SNIF(F)EUR, EUSE . Les sniffeurs de colle. ● sniffer… … Encyclopédie Universelle

    Sniffer - Packet sniffer Les packet sniffers (littéralement « renifleurs de paquets », aussi connus sous le nom de renifleurs ou sniffeurs) sont des logiciels qui peuvent récupérer les données transitant par le biais d un réseau local. Ils… … Wikipédia en Français

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

Для начала немного разберемся с терминологией.

Слово sniffer (дословно с английского это можно перевести как "нюхач" или "вынюхиватель") в самом общем смысле суть некое прослушивающее устройство, внедренное в сеть для перехвата передаваемых по ней данных. В более узком смысле сниффер - это ПО, взаимодействующее с (часто говорят "садящееся" пошел от является зарегистрированной торговой марки компании Network Associates, ссылающейся на продукт "Sniffer(r) Network Analyzer", однако впоследствии слово постигла та же участь, что и PC, xerox, kleenex - сниффер становится понятием нарицательным, обозначающим весь класс подобных продуктов.

В некоторой литературе и документации, а также в электронных словарях типа Lingvo, термин sniffer (network sniffer) отождествляется с такими понятиями, как "анализатор сетевого трафика", "анализатор пакетов", "анализатор протоколов", "сетевой анализатор". Однако позволю себе немного не согласиться с таким подходом.

Все-таки логичней было бы утверждать, что сниффинг - это совокупность мер по перехвату траффика. В рамках же конкретного продукта могут быть реализованы следующие вещи: захват пакетов (packet capturing). На этом этапе мы получаем некий сырой (mashine readable) дамп данных, обычно разделенный на куски по границам кадров (пакетов). И уж что мы с ним собираемся делать - наши проблемы. Но обычно, раз уж мы зачем-то запустили работать сниффер - нам интересно получить некий результат в human readable формате, для чего используется декодирование пакетов (decoding) или анализ протоколов;

Собственно, это процесс "разгребания" нашего дампа. Вот, к примеру, был у нас такой сырой материал.

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

Иногда для получения нужных сведений достаточно и такого представления, но все-таки удобнее, чтобы пакет был декодирован и проанализирован на всех уровнях стека протоколов. Ведь правда, приятнее получить такую картинку?

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 ....

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

виды снифферов и сниффинга

Все, что будет описано в этом абзаце, естественно, носит некоторый оттенок условности, поскольку официальную "Теорию сниффинга" еще никто в полном объеме не описал. Придется придумывать классификацию "на ходу";)

Итак, по "месторасположению" (если тут применим этот термин) сниффер может работать:

На маршрутизаторе (шлюзе)

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

На оконечном узле сети

Применительно к Ethernet мы будем иметь два основных возможных варианта прослушки. Классический, некоммутируемый Ethernet предполагает, что каждый сетевой интерфейс в принципе "слышит" весть траффик своего сегмента. Однако в нормальном режиме работы сетевой карты, прочитав первые 48 бит заголовка фрейма, станция сравнивает свой МАС-адрес с адресом получателя, указанном в фрейме. Если адрес чужой, станция "стыдливо закрывает уши", то бишь перестает читать чужой фрейм. Таким образом в нормальном режиме вы можете перехватывать и анализировать только свой траффик. Для перехвата пакетов всех станций сегмента требуется перевести вашу сетевую карту в режим под названием promiscuous mode, чтобы она "бесстыдно" продолжала читать не предназначенные ей пакеты. Практически все реализации снифферов позволяют переход карты в promiscuous mode.

Примечание: использование коммутируемого Ethernet создает ситуацию, когда даже переход карты в promiscuous mode делает прослушивание не предназначенного вашей станции трафика практически невозможным. Однако существует технология организации такого прослушивания путем так называемого ARP-спуфинга. Суть в следующем: коммутатор создает так называемый "broadcast domain", и хост с установленным сниффером с помощью подделки ARP-сообщений может притвориться, например, пограничным маршрутизатором (рассылая постоянно АRP-сообщения, где сетевому адресу маршрутизатора соответствует MAC-адрес прослушивающей станции). Таким образом трафик соседей насильственно завернется в сторону "шпиена".

В остальном же снифферы могут отличаются друг от друга главным образом функциональными возможностями, как то:

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

Качество декодирования и количество "узнаваемых" протоколов;

Пользовательский интерфейс и удобство отображения;

Дополнительные фичи: статистика, просмотр в реальном времени, генерирование или модификация пакетов и другое...

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

зачем нам нужен сниффер?

Традиционно идея сниффинга жила как бы в двух ипостасях: легальное и нелегальное применение. Что характерно, слово "сниффер" чаще применяется в нелегальной сфере, а "сетевой анализатор" - в легальной. Начнем, пожалуй, с легального применения;)

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

Например: ICQ, Europe Online. Под подозрительными технологиями/ПО следует понимать ситуации, когда вы предполагаете наличие в программе закладки или иной недокументированной функциональности. Например, ходили слухи, что клиентская часть знаменитого cDc Back Orifice также является троянской лошадкой и посылает некие сведения хозяевам - авторам ПО. Установка BO Client "на прослушивание" показала, что слухи не соответствуют действительности.

Не менее полезен сниффер для отладки вашего собственного ПО. Никогда не забуду момент, когда прокси-сервер не желал устанавливать соединение, если GET-запрос оканчивался на \n\n вместо требуемого \r\n\r\n. Только исследование пакетов, отправляемых "законопослушным" браузером и сравнение их с пакетами, отправляемыми моим "выскочкой"-скриптом, указало мне на досадную ошибку. Очень и очень часто в повседневной админской практике мне приходится сталкиваться и с анализом на уровне TCP/UDP.

Обучение. Можно довестись до полуобморочного состояния, зазубривая форматы заголовков пакетов различных протоколов и методы взаимодействия (скажем, 3-way TCP handshake, DNS, прикладные методы плана traceroute), но эти знания будут мертвыми, пока вы не попытаетесь "потрогать это руками" - написав однажды программу либо... заглянув в сниффер! Попробуйте после прочтения документации на неизвестный или плохо понятный вам протокол, смоделировать взаимодействие, перехватить пакеты и проанализировать их - уверяю вас, все станет чрезвычайно понятно и более того, это знание более реально и надолго отложится в голове. В случае же с закрытыми технологиями, сниффер может оказаться чуть ли не единственным средством для их изучения.

Протоколирование сетевого трафика. Можно много дискутировать на тему правомерности и этичности протоколирования администратором трафика пользователей для дальнейшего просмотра, но факт остается фактом - многие организации включают в политику безопасности эту технологию. Мое личное мнение - хозяин барин, то бишь если компания обеспечивает своих сотрудников оборудованием, подключением к локальным и глобальным сетям, она вправе требовать надлежащего использования этих ресурсов. Вторая важная причина для протоколирования трафика - обнаружение попыток несанкционированного доступа и других зловредностей - DoS-атак например. Имея такие логи администратор с 100-процентной точностью может знать, что происходит в его сетевых владениях.

Теперь поговорим о нелегальной стороне сниффинга. Ну, во-первых, это банальное

Подслушивание. Грамотно установив сниффер вы можете шпионить за ближними своими и удаленными - врагами, приятелями, супругами;) Вас могут заинтересовать такие вопросы: для чего человек использует сеть, какие веб-ресурсы он посещает, какие данные передает, с кем и о чем общается? Да простят меня органы государственной безопасности, но пресловутый СОРМ, правомерность которого в виде тотального протоколирования трафика суть баааальшой вопрос, я отношу пока именно в этот раздел, хотя он мог бы оказаться и в последнем абзаце "легального сниффинга";)

Более меркантильное подслушивание. Однако значительная часть "хакерского" сообщества не разменивает свои таланты на слежку за неверными супругами и прочую бытовуху. Чаще всего злоумышленника интересует некий материал, с помощью которого можно продвинуться в нелегком деле вламывания в чужие системы и сети. Как вы могли догадаться, речь идет, главным образом, о перехвате имен пользователей и паролей, проходящих по сети в незашифрованном (plain text) виде. В частности, это касается паролей к telnet, POP, IMAP, NNTP, IRC, к веб-приложениям, не использующим шифрование, SNMP v1 community-strings и т.п.

реализации

Теперь, более-менее разобравшись с теоретической частью, вернемся на грешную землю - поговорим о конкретных реализациях снифферов под различные платформы. На самом деле такого софта очень много, разбежка в функциональных возможностях и ценнике (особенно в последнем) - колоссальная. Составитель "Sniffing (network wiretap, sniffer) FAQ" Robert Graham рекомендует попробовать следующие продукты:

Network Associates Sniffer (for Windows)
http://www.nai.com/mktg/survey.asp?type=d&code=2483

WinNT Server
Microsoft"овский WinNT Server поставляется со встроенной программой под названием "Network Monitor". Зайдите в панель управления сетью, выберите "Services", нажмите "Add..." и выберите "Network Monitor Tools and Agent". После установки программа будет доступна в старт-меню в разделе "Administrative Tools".

На самом деле BlackICE является системой обнаружения вторжений (IDS, Intrusion Detection System), но одна из функций ее - писать сырые дампы пакетов в форме, приемлемой для расшифровки анализаторами протоколов. Одно но: программа просматривает только трафик, проходящий через локальные интерфейсы хоста, на котором работает, то бишь является non-promiscuous.

Эта программа, наоборот, может только анализировать пакеты, записанные сниффером вроде BlackICE Pro.

Бесплатный анализатор протоколов.

Естественно, этот список далеко не полный, вы можете залезть на любую поисковую систему или в коллекцию софта для даунлоада и найти что-нибудь еще. Более того, в обзоре не упомянут самый, на мой взгляд, выдающийся продукт такого рода для Win32 - NetXRay, нынче переименованный в Sniffer Basic. О нем мы поговорим чуть попозже.

snort
Базирующийся на libpcap сниффер с расширенными возможностями фильтрации.

Опять же, список далек от совершенства, можете поискать что-нибудь еще. Друго дело, что в *NIX-сообществе особо не принято "распыляться" - есть проверенные временем, постоянно совершенствующиеся продукты-лидеры, и большинство предпочитает именно их, даже не пытаясь искать альтернативу. Абсолютные лидеры тут - tcpdump и sniffit.

Tcpdump & WinDump

(by Ghost//Necrosoft)

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

WinDump - порт TcpDump с *nix систем, выполняет те же самые функции и имеет такой же синтаксис, что и TcpDump, но имеет пару дополнительных опций командной строки, о которых будет рассказано ниже.

Небольшая аннотация к использованию TcpDump под различными системами. Под SunOS с использованием устройств nit или bpf: для запуска tcpdump вы должны иметь доступ на чтение к /dev/nit или /dev/bpf*. Под Solaris с dlpi вы должны иметь доступ к псевдосетевым адаптерам, таким как /dev/le. Под HP-UX с dlpi: вы должны быть root"ом или на tcpdump должен быть установлен uid на root. Под IRIX с snoop и Linux: требования, аналогичные HP-UX. Под Ultrix и Digital UNIX: только суперюзеру доступны promiscuous-mode операции, используя pfconfig(8) можно получить право на запуск tcpdump. Под BSD: вы должны иметь доступ к /dev/bpf*. Под Win32: вы должны установить NDIS packet capture driver.

А теперь подробно разберем опции командной строки.

TcpDump[-adeflnNOpqStvx ] [-c count ] [-F file ] [-i interface ] [-r file ] [-s snaplen ] [-T type ] [-w file ] [expression ]. Специфические опции Windump [-D ] [ -B size ].

Aразрешает конвертировать сетевые и широковещательные адреса в имена.

Cвыход после обработкиcount пакетов.

Dвыводит содержимое пакета в удобочитаемом виде.

Ddвыводит содержимое пакета как фрагмент Си-программы.

Dddвыводит содержимое пакета в десятичном виде.

Eвыводит заголовки канального уровня в каждой новой строке.

Fвыводит адреса удаленных и локального хостов без преобразования в имена.

Fиспользоватьfile с описанием параметров фильтрации (дополнительные выражения в командной строке игнорируются).

Iиспользовать интерфейсinterface для трассировки. Если не определен,tcpdump находит активный сетевой интерфейс с наименьшим номером (исключая loopback). В Windowsinterface - имя сетевого адаптера или его номер (можно узнать, запустив WinDump -D).

Lиспользует буферизированный вывод на stdout. Полезным может оказаться конструкция вида "tcpdump -l | tee dat"" or "tcpdump -l > dat & tail -f dat"".

Nне преобразовывать адреса (т.e. адрес хоста, номер порта и т.д.) в имена.

Nне печатать доменное имя в имени хоста. Т.е. если использован данный флаг,tcpdump напечатает "nic"" вместо "nic.ddn.mil"".

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

Pне переводить сетевой интерфейс в "promiscuous mode".

Qсокращенный вывод. Выводит информацию в сокращенном виде.

Rчитает пакеты из файлаfile (которые созданы при помощи опции -w). Если вы хотите использовать в качестве ввода консоль, тоfile это "-"".

Sвыдаетsnaplen байт каждого пакета (в SunOS"овсоком NIT минимальное количество 96). 68 байт достаточно для протоколов IP, ICMP, TCP и UDP, однако обрезает информацию с более высоких уровней, скажем, DNS и NFS пакетов.

Tпринудительная интерпретация пакетов по типуtype соответствующих маске "expression ". На данный момент известны следующие типы:rpc (Remote Procedure Call),rtp (Real-Time Applications protocol),rtcp (Real-Time Applications control protocol),vat (Visual Audio Tool), иwb (distributed White Board).

Sвыводит абсолютный номер TCP-пакета.

Tне выводит время в каждой строке.

Ttвыводит неформатированное время в каждой строке.

Vдетальный вывод. К примеру, время жизни пакетов и тип сервиса.

Vvболее детальный вывод. К примеру, вывод дополнительных полей NFS reply packets.

Wзаписывает raw-пакеты вfile, которые вы сможете в дальнейшем расшифровать с использованием опции -r. Если вы хотите использовать в качестве вывода консоль, тоfile это "-"".

Xвыводит каждый пакет в шестнадцатеричном виде (без заголовка). На вывод будет отправленоsnaplen байт.

Дополнительные опции WinDump:

Bустанавливает размер буфера драйвераsize в килобайтах. По умолчанию размер буфера 1 мегабайт. Если в процессе работы некоторые пакеты не отображаются, попробуйте увеличить размер буфера. Если у вас РРР-соединение или 10 Мбит Ethernet, то размер буфера можно уменьшить вдвое или втрое.

-D выводит список сетевых устройств, которые присутствуют в вашей системе. Список имеет вид:number - номер сетевого устройства в системе,name - его имя, а за ними следует описание устройства. В последствии вы сможете использовать эти данные для того, чтобы работать со всеми имеющимися сетевыми интерфейсами вашей системы, которые доступны в данный момент. А выбрать устройство можно будет при помощи опции -I - "WinDump -iname " или "WinDump -inumber ".

expression- собственно, выражение, которое задает критерий фильтрации пакетов. Если полеexpression отсутствует, то выводятся все пакеты. В противном случае выводятся только те пакеты, которые соответствуют маскеexpression.

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

type-определитель, задающий общую политику. Возможные типы -host ,net иport . Т.е. "host foo", "net 128.3", "port 20". Еслиtype не указан, то по умолчанию используетсяhost .

dir-определитель, указывающий направление передачи пакетов. Возможные вариантыsrc ,dst ,src or dst иsrc and dst . Т.е "src foo", "dst net 128.3", "src or dst port ftp-data". Еслиdir неуказан, то по умолчанию используетсяsrc or dst. Для "null" соединений (это ppp или slip) используетсяinbound иoutbound определитель для указания желаемого направления.

proto- определитель позволяет фильтровать пакеты по конкретному протоколу. Возможные протоколы:ether ,fddi ,ip ,arp ,rarp ,decnet ,lat ,sca ,moprc ,mopdl ,tcp иudp . Т.е. "ether src foo", "arp net 128.3", "tcp port 21". Если определитель отсутствует, то никакие пакеты не фильтруются. ("fddi" фактически является алиасом для "ether", т.к. в большинстве случаев FDDI-пакеты содержат Ethernet-адрес отправителя и получателя и часто содержат Ethernet-типы пакетов. FDDI-заголовки также содержат другие поля, которых нет в списке фильтров.)

В дополнение к вышесказанному, некоторые специальные примитивы не имеют шаблонов, это:gateway ,broadcast ,less ,greater и арифметические выражения. Об этом чуть далее.

Множество составных выражений фильтров используют словаand ,or иnot для объединения примитивов. К примеру "host foo and not port ftp and not port ftp-data". Для упрощения ввода некоторые определители могут быть опущены. К примеру, "tcp dst port ftp or ftp-data or domain" - то же самое, что и "tcp dst port ftp or tcp dst port ftp-data or tcp dst port domain".

Допускаются следующие выражения:

dst hosthost верно, если поле IP destination пакета -host , может быть адрес или имя хоста.

src hosthost верно, если поле IP source пакета -host .

hosthost верно, если source или destination пакета -host . Также могут употребляться префиксы:ip ,arp , илиrarp как:ip host host что эквивалентноether proto \ip and host host . Еслиhost - имя с несколькими IP-адресами, каждый адрес проверяется на соответствие.

ether dstehost Верно, если Ethernet-адрес получателя -ehost .Ehost - любое из имен /etc/ethers или номер (см.ethers (3N).

ether srcehost верно, если Ethernet-адрес отправителя -ehost .

ether hostehost верно, если Ethernet-адреса получателя или отправителя -ehost .

gatewayhost верно, еслиhost - gateway. Т.е. Ethernet-адрес отправителя или получателя -host , но ни IP отправителя, ни IP получателя не являютсяhost .Host может быть именем, а также может находиться в /etc/hosts и /etc/ethers. (Что равносильноether host ehost and not host host , который может использоваться с любым именем или номером дляhost / ehost .)

dst netnet верно, если IP получателя имеет адрес -net .Net - любая запись из /etc/networks или адрес сети.

src netnet верно, если IP отправителя имеет адрес -net .

netnet Верно, если IP получателя или отправителя имеют адрес сети -net.

netnet mask mask Верно, если IP-адрес совпадает сnet c соответствующей netmask. Может быть определен совместно сsrc илиdst .

netnet /len верно, если IP равноnet, a маска подсети -len в битовом виде (CIDR-формат). Может быть определен совместно сsrc илиdst .

dst portport верно, если пакет ip/tcp или ip/udp и имеет порт получателя -port .port может быть числом или присутствовать в /etc/services (смtcp (4P) иudp (4P)). Если имя используется для двух или более портов, то проверяются оба номера порта и протоколы. Если используются недопустимые номер порта или имя, то проверяются только номера портов (т.е.dst port 513 выводит трафик tcp/login и udp/who, иport domain выводит tcp/domain и udp/domain).

src portport верно, если порт отправителя -port .

portport верно, если порт отправителя или получателя -port . Некоторые выражения можно комбинировать, к примеру:tcp src port port - только tcp-пакеты у которых порт -port .

lesslength верно, если длина пакета меньше или равнаlength , что равносильноlen <= length .

greaterlength верно, если длина пакета больше или равнаlength , что равносильноlen >= length .

ip protoprotocol верно, если пакет является IP пакетом с протоколомprotocol .Protocol может иметь номер или одно из именicmp ,igrp ,udp ,nd , илиtcp .

ether broadcastверно, если пакет - широковещательный Ethernet-пакет. Выражениеether является необязательным.

ip broadcastверно, если пакет - широковещательный IP-пакет.

ether multicastверно, если пакет - Еthernet multicast-пакет. Выражениеether является необязательным. Это сокращенная запись для "ether & 1!= 0 ".

ip multicastверно, если пакет - IP-multicast пакет.

ether protoprotocol верно, если пакет типа Ethernet.Protocol может быть число или имя:ip ,arp , илиrarp .

decnet srchost верно, если DECNET-адрес получателя -host , который может быть адресом типа "10.123"", или DECNET-имя хоста. (DECNET имя хоста поддерживается только в Ultrix системах).

decnet dsthost Верно, если DECNET-адрес получателя -host .

decnet hosthost Верно, если DECNET-адрес получателя или отправителя -host .

proto[ expr : size ]

Protoодин из следующих протоколовether, fddi, ip, arp, rarp, tcp, udp, или icmp , и показывает уровень протокола для данной операции. Смещение в байтах для данного уровня протокола берется изexpr .Size - необязательное, показывает интерeсующее количество байт по данному смещению, может быть 1,2 или 4, по умолчанию 1.

Примеры использования tcpdump

Выдача всех вохдящих и исходящих пакетов отsundown :tcpdump host sundown

Выдача трафика междуhelios и одним из двухhot илиace :tcpdump host helios and \(hot or ace \)

Выдача всех пракетов междуace и другими хостами, исключаяhelios :tcpdump ip host ace and not helios

Выдача трафика между локальной машиной и машиной, находящейся в Berkeley:tcpdump net ucb-ether

Выдача ftp трафика через шлюзsnup :tcpdump "gateway snup and (port ftp or ftp-data)"

Выдача трафика не принадлежащего машинам в локальной сети (если ваша машина - шлюз в другую сеть, tcpdump не сможет выдать трафик вашей локальной сети).tcpdump ip and not net localnet

Выдача старовых и стоп пакетов (SYN и FIN пакеты), которые не принадлежат локальной сети.tcpdump "tcp & 3!= 0 and not src and dst net localnet "

Выдача IP пакетов длиной более 576 байт, переданных через шлюзsnup :tcpdump "gateway snup and ip > 576"

Выдача IP broadcast или multicast пакетов, которые не посылаются через Ethernet broadcast или multicast:tcpdump "ether & 1 = 0 and ip >= 224"

Выдача всех ICMP пакетов, которые не являются эхо запросами/ответами (т.е, не ping пакеты):tcpdump "icmp!= 8 and icmp!= 0"

by Alice D. Saemon

Та, которую люблю...

Long long time ago... NetXRay был первым сниффером, попавшим в поле моего зрения. Тогда, в 1997 году эта английская программа произвела фурор в кругах windows-ориентированных сетевиков. Прошли годы, но старенькая версия NetXRay (3.0.1) все еще в строю, в ежедневной работе на моей рабочей станции. На сегодняшний день продукт переименован в Sniffer Basic, добавлены некоторые новые возможности, но, с большего, основная функциональность осталась неизменной со времен 3.0.1. Это первая причина, почему в газете будет описан именно NetXRay 3.0.1. Вторая причина... (озираясь на анти-пиратскую полицию) - продукт очень дорогой (1643 фунтов, которые стерлингов), и trial"ные ограничения очень серьезные. Итак, приступим.

Пакет состоит из набора разных функций и действительно может называться скорее сетевым анализатором, нежели сниффером. Все возможности (модули) сгруппированы в меню "Tools", там же находятся и различные установки. С них и начнем. Вы можете выбрать адаптер, для которого проводится текущее тестирование (probe). Адаптер должен поддерживать стандарт NDIS 3.0/3.1.

Внимание, баг! Если вы "натравливаете" NetXRay на "неправильный" по его мнению адаптер или захватываете пакеты, которые он не может декодировать на канальном-сетевом уровне (например, трафик эксплойтов, посылающих криво фрагментированные пакеты) - на стадии декодирования (анализа протоколов) программа зависает намертво.

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

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

Ну вот, теперь приступаем к функциональным модулям пакета.


capture (захват пакетов)

Сердце NetXRay, собственно то, что в народном понимании есть сниффер. Поэтому позволю себе описать его наиболее подробно.

При активизации этого модуля пред нами возникает маленькое окошечко с "приборной панелью" и парой кнопок. Все действия, которые мы можем выполнять в этом окне, продублированы в меню Capture. А делать мы можем вот что: начать захват пакетов, остановить, остановить+просмотреть содержимое буфера и просто просмотреть содержимое буфера, при условии что захват был остановлен. Там же мы можем осуществить тонкую настройку фильтров:

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

По шаблонам. Если нужно изловить пакеты, содержащие некие определенные данные в любом месте пакета, вы можете написать хитронавороченный шаблон. Причем, что особенно приятно, конструировать шаблоны можно в любом удобном для вас представлении: бинарном, шестнадцатеричном, ASCII и EBCDIC.

По известным программе протоколам. Это:

сетевые: AppleTalk, AppleTalk ARP, APOLLO, DECNET, IP, IP ARP, IPX, LAT, NetBEUI, OSI, SNA, VINES, VINES Loopback, VINES Echo, XNS

выше в стеке IP: транспортные, служебные и маршрутизации - ICMP, IGMP, GGP, EGP, IGP, ISO-TP4, HELLO, IP-VINES, IGRP, OSPF, TCP, UDP; прикладного уровня - FTP, REXEC, RLOGIN, RSH, PRINTER, SMTP, TELNET, DNS(TCP), GOPHER, HTTP, POP, SUNRPC(TCP), NNTP, NETBIOS, X-WINDOW, DNS(UDP), BOOTP, TFTP, SUNRPC(UDP), SNMP, SNMPTRAP, BIFF, WHO, SYSLOG, RIP, GDP, NFS.

выше в стеке IPX: NCP, SAP, NRIP, NBIOS, DIAGNOSTIC, SERIALIZATION, NMPI, NLSP, NSNMP, NSNMPTRAP, SPX.

Как видите, не так уж мало, я бы сказала - для реальной жизни даже избыточно.

Внимание! Протокольный фильтр имеет немного странный интерфейс: предполагается, что если все чекбоксы в границах одного уровня не помечены, захватываются все пакеты протоколов данного уровня и все что выше (ниже, если смотреть на пользовательский интерфейс;). Таким образом, если вы не поставили ни одной "птички" - ловится абсолютно все. Естественно, неизвестные протоколы прикладных уровней в таком случае ловятся тоже, но не декодируются в удобочитабельный вид, что естественно, раз уж они неизвестные:))

Кроме этого, можно настроить размер буфера либо указать файл, куда скидывать результат захвата пакетов.

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

После отработки захвата нужного числа пакетов, при активизации просмотра мы вываливаемся в так называемое "окно результатов", имеющее по умолчанию имена XRay1, XRay2 ну и так далее по количеству текущих буферов. Такое окно вы можете лицезреть на скриншоте: сверху - список пакетов с краткой "аннотацией", посередине - декодированные данные (ну что смог декодировать;) и снизу - сырой пакет. Любопытно, что при нажатии на интересующее поле в декодированной секции подсвечивается соответствующее место в сыром пакете - можно проверить качество работы анализатора протоколов;)

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

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

Правда а) визуально это выглядит ужасно б) включается эта опция в таком нелогичном месте, что даже такой старый NetXRay-юзер как я забывает где же эта "птичка". Птичка устанавливается в меню Tools | Options... закладка General, чекбокс Realtime Display, а не в настройках Capture, где ее логично было бы искать;-/

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


packet generator

Вот уж поистине замечательная штука: можно с нуля "набросать" и отправить в сеть абсолютно любой пакет. Интерфейс состоит из главного окна и так называемого конструктора пакетов, разделенного на две секции - Configure и Decode.

В первой мы имеем портрет стандартного дампа (см. теоретическую часть статьи), забитый нулями. Начинаем вписывать туда шестнадцатеричные числа - в секции декодирования, которая выглядит точь в точь как расшифрованный пакет в "окне результатов" Capture, появляется анализ нашего пакета.

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

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

Если "послать текущий пакет" вызывается из окна Packet Generator"а - автоматически вызывается конструктор пакетов. Будьте внимательны!

В конструкторе пакетов в секции Decode программа будет давать вам некоторые подсказки, в частности, высчитывать новую контрольную сумму при модификации пакета (она бы еще сама вносила соответствующие изменения, ленивое создание;). Однако AI оно тем и отличается от разума человеческого, что думать как следует не умеет. Поэтому когда, например, вы меняете IP-адрес получателя, подумайте, не следует ли заодно поменять его MAC-адрес?;)

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

всякая всячина

Кроме вышеописанного программа содержит массу других полезных и не очень (как кому;) наворотов. О них кратко:

Dashboard. Статистика загруженности сети, точнее той ее части, которая вам видна. Количество пакетов, байт, ошибок всех типов, расчет утилизации. Меня всегда смущала эта фича, поскольку никогда в жизни я не видела сообщений об ошибках - ну быть не может такого чтоб их не было!;)

Host Table. Отлавливает различные сведения о видимых снифферу хостах и их деятельности (без полного захвата и анализа пакетов)

Matrix. Практически то же самое, что и Host Table, но представленное немного в другом формате.

History. Чертит графики и диаграммы по поведению сети в определенный промежуток времени.

Protocol Distribution. Как следует из названия, ведет статистику по использованию различных протоколов.

Statistics. Статистика по утилизации и размерам кадров.

Alarm log. Журнал учета определенных вами событий.

Ну вот вкратце и все. (ничего себе "вкратце получилось %-()) Скачивайте и тестируйте на здоровье - себе в радость и врагам назло:)

заключение

Ну вот и закончена на сегодня сказка о снифферах. Кто слушал (дочитал до конца) - молодец, надеюсь получили ответы на большинство своих вопросов. Для ради справедливости отмечу: далеко не ВСЕ вопросы были рассмотрены в рамках этой статьи. За бортом остались по крайней мере две большие темы: внутреннее устройство снифферов, включая методы и подходы к написанию подобного софта, а также способы противостояния снифферингу.

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

Сниффер по-другому называют анализатор трафика — это программа или другое аппаратное устройство, которое перехватывает, а затем анализирует сетевой трафик. В настоящее время эти программы имеют вполне законное обоснование, поэтому широко используются в сети, но применяться они могут как во благо, так и во вред.

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

Слово sniffer происходит от англ. to sniff – нюхать, принцип действия в том, что эта программа регистрирует и анализирует программы, которые установлены на машинах, передающих информационные пакеты. Для эффективности операции по считыванию информации он должен находиться поблизости от главного ПК.

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

Виды анализаторов трафика

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

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

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

Еще один тип программ работает с большим каналом передачи данных, при этом вредитель может каждый день генерировать до 10 мегабайтовых протоколов.

Как это работает

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

Проще всего использовать WiFi снифферы в сетях со слабой защитой – в кафе, общественных местах и т.п.

Провайдеры с помощью этих программ могут отследить несанкционированный доступ к внешним системным адресам.

Как защититься от снифферов

Чтобы понять, что в локальную сеть кто-то проник, в первую очередь стоит обратить внимание на скорость загрузки пакетов , если она значительно ниже заявленной, это должно насторожить. Быстродействие компьютера можно отследить при помощи Диспетчера задач. Можно использовать специальные утилиты, но они чаще всего конфликтуют с брандмауэром windows, поэтому его лучше на какое-то время отключить.

Для системных администраторов проверка и поиск анализаторов трафика в локальной сети — это необходимое мероприятие. Для обнаружения вредных приложений можно использовать известные сетевые антивирусы, такие как Доктор Веб или Касперский Антивирус, которые позволяют обнаружить вредителей как на удаленных хостах, так и непосредственно внутри локальной сети.

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

Обзор приложений и основные возможности

CommView

CommView декодирует пакеты переданной информации, выдает статистику используемых протоколов, в виде диаграмм. Сниффер трафика позволяет анализировать IP-пакеты, причем те, которые необходимы. Сниффер для Windows работает с известными протоколами : HTTP, HTTPS, DHCP, DDNH, DIAG, POP3, TCP, WAP и др. CommView работает с модемами Ethernet, wi-fi и другими. Захват пакетов происходит через установленное соединение, при помощи вкладки «Текущие IP -соединения », где можно создавать псевдонимы адресов.

Вкладка «Пакеты » отражает информацию о них, при этом их можно скопировать в буфер обмена.

«LOG -файлы » позволяет просматривать пакеты в формате NFC.

Вкладка «Правила ». Здесь можно задать условия перехвата пакетов. Разделы данной вкладки: IP-адреса, MAC-адреса, Порты, Процесс, Формулы и Индивидуальные параметры.

«Предупреждение »: предусматривает настройку извещений в локальной сети, функционирует с помощью кнопки «Добавить». Здесь можно задать условия, тип событий:

  • «Пакеты в секунду» — при превышении уровня загрузки сети.
  • «Байты в секунду» — при превышении частоты передачи данных.
  • «Неизвестный адрес», т. е. обнаружение несанкционированных подключений.

Вкладка «Вид » — здесь отражается статистика трафика.

CommView совместима с Windows 98, 2000, XP, 2003. Для работы с приложением необходим адаптер Ethernet.

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

Spynet

Spynet выполняет функции декодирования пакетов, их перехвата. С его помощью можно воссоздать страницы, на которых побывал пользователь. Состоит из 2-х программ CaptureNet и PipeNet. Ее удобно использовать в локальной сети. CaptureNet сканирует пакеты данных, вторая программа контролирует процесс.

Интерфейс достаточно прост:

  • Кнопка Modify Filter – настройка фильтров.
  • Кнопка Layer 2,3 – устанавливает протоколы Flame – IP; Layer 3 – TCP.
  • Кнопка Pattern Matching осуществляет поиск пакетов с заданными параметрами.
  • Кнопка IP Adresses позволяет сканировать необходимые IP-адреса, передающие интересующую информацию. (Варианты 1-2, 2-1, 2=1). В последнем случае весь трафик.
  • Кнопка Ports , т. е. выбор портов.

Для перехвата данных необходимо запустить программу Capture Start (запуск), т. е. запускается процесс по перехвату данных. Файл с сохраненной информацией копируется только после команды Stop, т. е. прекращение действий по захвату.

Преимуществом Spynet является возможность декодирования web страниц, которые посещал пользователь. Так же программу можно скачать бесплатно, хотя и довольно тяжело найти. К недостаткам можно отнести малый набор возможностей в Windows. Работает в Windows XP, Vista.

BUTTSniffer

BUTTSniffer анализирует непосредственно сетевые пакеты. Принцип работы — это перехват передаваемых данных, а так же возможность их автоматического сохранения на носителе, что очень удобно. Запуск данной программы происходит через командную строку . Есть так же параметры фильтров. Программа состоим из BUTTSniff.exe и BUTTSniff. dll.

К значительным минусам BUTTSniffer относятся нестабильная работа, нередки частые сбои вплоть до сноса ОС (синего экрана смерти).

Помимо этих программ-снифферов, существует множество других, не менее известных: WinDump, dsniff, NatasX, NetXRay, CooperSniffer, LanExplorter, Ne Analyzer.

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

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

Снифферы - это проги, которые перехватывают
весь сетевой трафик. Снифферы полезны для диагностики сети (для админов) и
для перехвата паролей (понятно для кого:)). Например если ты получил доступ к
одной сетевой машине и установил там сниффер,
то скоро все пароли от
их подсети будут твои. Снифферы ставят
сетевую карту в прослушивающий
режим (PROMISC).То есть они получают все пакеты. В локалке можно перехватывать
все отправляемые пакеты со всех машин (если вы не разделены всякими хабами),
так
как там практикуется широковещание.
Снифферы могут перехватывать все
пакеты (что очень неудобно, ужасно быстро переполняется лог файл,
зато для более детального анализа сети самое оно)
или только первые байты от всяких
ftp,telnet,pop3 и т.д. (это самое веселое, обычно примерно в первых 100 байтах
содержится имя и пароль:)). Снифферов сейчас
развелось... Множество снифферов есть
как под Unix, так и под Windows (даже под DOS есть:)).
Снифферы могут
поддерживать только определенную ось (например linux_sniffer.c,который
поддерживает Linux:)), либо несколько (например Sniffit,
работает с BSD, Linux, Solaris). Снифферы так разжились из-за того,
что пароли передаются по сети открытым текстом.
Таких служб
уйма. Это telnet, ftp, pop3, www и т.д. Этими службами
пользуется уйма
народу:). После бума снифферов начали появляться различные
алгоритмы
шифрования этих протоколов. Появился SSH (альтернатива
telnet, поддерживающий
шифрование), SSL(Secure Socket Layer - разработка Netscape, способная зашифровать
www сеанс). Появились всякие Kerberous, VPN(Virtual Private
Network). Заюзались некие AntiSniff"ы, ifstatus"ы и т.д. Но это в корне не
изменило положения. Службы, которые используют
передачу пароля plain text"ом
юзаются во всю:). Поэтому сниффать еще долго будут:).

Windows реализации снифферов

linsniffer
Это простой сниффер для перехвата
логинов/паролей. Стандартная компиляция (gcc -o linsniffer
linsniffer.c).
Логи пишет в tcp.log.

linux_sniffer
Linux_sniffer
требуется тогда, когда вы хотите
детально изучить сеть. Стандартная
компиляция. Выдает всякую шнягу дополнительно,
типа isn, ack, syn, echo_request (ping) и т.д.

Sniffit
Sniffit - продвинутая модель
сниффера написанная Brecht Claerhout. Install(нужна
libcap):
#./configure
#make
Теперь запускаем
сниффер:
#./sniffit
usage: ./sniffit [-xdabvnN] [-P proto] [-A char] [-p
port] [(-r|-R) recordfile]
[-l sniflen] [-L logparam] [-F snifdevice]
[-M plugin]
[-D tty] (-t | -s) |
(-i|-I) | -c]
Plugins Available:
0 -- Dummy
Plugin
1 -- DNS Plugin

Как видите, сниффит поддерживает множество
опций. Можно использовать сниффак в интерактивном режиме.
Сниффит хоть и
довольно полезная прога, но я ей не пользуюсь.
Почему? Потому что у Sniffit
большие проблемы с защитой. Для Sniffit"a уже вышли ремоутный рут и дос для
линукса и дебиана! Не каждый сниффер себе такое позволяет:).

HUNT
Это
мой любимый сниффак. Он очень прост в обращении,
поддерживает много прикольных
фишек и на данный момент не имеет проблем с безопасностью.
Плюс не особо
требователен к библиотекам (как например linsniffer и
Linux_sniffer). Он
может в реальном времени перехватывать текущие соединения и под
чистую дампить с удаленного терминала. В
общем, Hijack
rulezzz:). Рекомендую
всем для усиленного юзания:).
Install:
#make
Run:
#hunt -i

READSMB
Сниффер READSMB вырезан из LophtCrack и портирован под
Unix (как ни странно:)). Readsmb перехватывает SMB
пакеты.

TCPDUMP
tcpdump - довольно известный анализатор пакетов.
Написанный
еще более известным челом - Вэн Якобсоном, который придумал VJ-сжатие для
PPP и написал прогу traceroute (и кто знает что еще?).
Требует библиотеку
Libpcap.
Install:
#./configure
#make
Теперь запускаем
ее:
#tcpdump
tcpdump: listening on ppp0
Все твои коннекты выводит на
терминал. Вот пример вывода на пинг

ftp.technotronic.com:
02:03:08.918959
195.170.212.151.1039 > 195.170.212.77.domain: 60946+ A?
ftp.technotronic.com.
(38)
02:03:09.456780 195.170.212.77.domain > 195.170.212.151.1039: 60946*
1/3/3 (165)
02:03:09.459421 195.170.212.151 > 209.100.46.7: icmp: echo
request
02:03:09.996780 209.100.46.7 > 195.170.212.151: icmp: echo
reply
02:03:10.456864 195.170.212.151 > 209.100.46.7: icmp: echo
request
02:03:10.906779 209.100.46.7 > 195.170.212.151: icmp: echo
reply
02:03:11.456846 195.170.212.151 > 209.100.46.7: icmp: echo
request
02:03:11.966786 209.100.46.7 > 195.170.212.151: icmp: echo
reply

В общем, снифф полезен для отладки сетей,
нахождения неисправностей и
т.д.

Dsniff
Dsniff требует libpcap, ibnet,
libnids и OpenSSH. Записывает только введенные команды, что очень удобно.
Вот пример лога коннекта
на unix-shells.com:

02/18/01
03:58:04 tcp my.ip.1501 ->
handi4-145-253-158-170.arcor-ip.net.23
(telnet)
stalsen
asdqwe123
ls
pwd
who
last
exit

Вот
dsniff перехватил логин с паролем (stalsen/asdqwe123).
Install:
#./configure
#make
#make
install

Защита от снифферов

Самый верный способ защиты от
снифферов -
использовать ШИФРОВАНИЕ (SSH, Kerberous, VPN, S/Key, S/MIME,
SHTTP, SSL и т.д.). Ну
а если не охота отказываться от plain text служб и установления дополнительных
пакетов:)? Тогда пора юзать антиснифферские пекеты...

AntiSniff for Windows
Этот продукт выпустила известная группа
Lopht. Это был первый продукт в своем роде.
AntiSniff, как сказано в
описании:
"AntiSniff is a Graphical User Interface (GUI) driven tool for
detecting promiscuous Network Interface Cards (NICs) on your local network
segment". В общем, ловит карты в promisc режиме.
Поддерживает огромное
количество тестов (DNS test, ARP test, Ping Test, ICMP Time Delta
Test, Echo Test, PingDrop test). Можно сканить как одну машину,
так и сетку. Здесь имеется
поддержка логов. AntiSniff работает на win95/98/NT/2000,
хотя рекомендуемая
платформа NT. Но царствование его было недолгим и уже в скором
времени появился сниффер под названием AntiAntiSniffer:),
написанный Майком
Перри (Mike Perry) (найти его можно по адресу www.void.ru/news/9908/snoof.txt).Он
основан на LinSniffer (рассмотренный далее).

Unix sniffer detect:
Сниффер
можно обнаружить командой:

#ifconfig -a
lo Link encap:Local
Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP
LOOPBACK RUNNING MTU:3924 Metric:1
RX packets:2373 errors:0
dropped:0 overruns:0 frame:0
TX packets:2373 errors:0 dropped:0
overruns:0 carrier:0
collisions:0 txqueuelen:0

ppp0 Link
encap:Point-to-Point Protocol
inet addr:195.170.y.x
P-t-P:195.170.y.x Mask:255.255.255.255
UP POINTOPOINT PROMISC
RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:3281
errors:74 dropped:0 overruns:0 frame:74
TX packets:3398 errors:0
dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:10

Как
видите интерфейс ppp0 стоит в PROMISC mode. Либо оператор
загрузил снифф для
проверки сети, либо вас уже имеют... Но помните,
что ifconfig можно спокойно
подменить, поэтому юзайте tripwire для обнаружения
изменений и всяческие проги
для проверки на сниффы.

AntiSniff for Unix.
Работает на
BSD, Solaris и
Linux. Поддерживает ping/icmp time test, arp test, echo test, dns
test, etherping test, в общем аналог AntiSniff"а для Win, только для
Unix:).
Install:
#make linux-all

Sentinel
Тоже полезная прога для
отлова снифферов. Поддерживает множество тестов.
Проста в
использовании.
Install: #make
#./sentinel
./sentinel [-t
]
Methods:
[ -a ARP test ]
[ -d DNS test
]
[ -i ICMP Ping Latency test ]
[ -e ICMP Etherping test
]
Options:
[ -f ]
[ -v Show version and
exit ]
[ -n ]
[ -I
]

Опции настолько просты, что no
comments.

MORE

Вот еще несколько
утилит для проверки вашей сети(for
Unix):
packetstorm.securify.com/UNIX/IDS/scanpromisc.c -ремоутный
детектор PROMISC mode для ethernet карт (for red hat 5.x).
http://packetstorm.securify.com/UNIX/IDS/neped.c
- Network Promiscuous Ethernet Detector (нужно libcap & Glibc).
http://packetstorm.securify.com/Exploit_Code_Archive/promisc.c
-сканирует девайсы системы на детект сниффов.
http://packetstorm.securify.com/UNIX/IDS/ifstatus2.2.tar.gz
- ifstatus тестит сетевые интерфейсы в PROMISC mode.



Загрузка...