vk_logo twitter_logo facebook_logo googleplus_logo youtube_logo telegram_logo telegram_logo

#15 "... а ты не воруй".

Дата публикации: 14.03.2001
Количество просмотров: 7688

Новости.

Попалась презабавнейшая страничка. В канализационную сеть Нью-Йорка запущен робот, чтобы создать другую сеть - волоконно-оптическую.

Робот-укладчик, представляющий из себя "помесь таксы с пылесосом", уже начал выполнять свою первую миссию. Принадлежит он компании телесвязи - CityNet. Вот фото.

И самое завидное...
Некоторые компании-толстосумы, пришли к мнению, что фирма CityNet нашела "сокровище в навозе" и выделили 100 миллионов долларов под заказы новых ста роботов.

Такой проект вполне может разрушить монополию ГТС и т.п. на подземные коммуникации. Может быть кто-то из сетевиков уже пробовал использовать канализацию для прокладок? Очень интересный вопрос.

Немного о конкурентных, или наоборот, дружественных технологиях. Очень неплохой ресурс www.xdsl.ru. Естественно, о xDSL. Есть и форум, и ряд статей (среди них и моя ;-)).

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

И еще про DSL. Крупнейшая сеть Екатеринбурга - и совсем не "домашняя" - СЦК активно продвигает на местном рынке подключение через ADSL. Расценки выглядят весьма привлекательно даже для начинающих сетестроителей. Началось, процесс пошел. ;-)

#15. "... а ты не воруй". Продолжение рассказа Evgena.

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

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

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

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

1. Авторизация по MAC-адресу.
Идея состоит в том, чтобы жестко прописать таблицу соответствий ip-MAC на маршрутизаторе. Это можно сделать, используя возможности протокола arp, например так:
arp -d -a
arp -f ./arptable,
где файл arptable содержит записи вида:
ip mac
212.220.31.77 00:80:ad:8a:66:2a pub

Все очень просто. Но минусы очевидны. Во-первых, достаточно продвинутый пользователь может подделать MAC, во-вторых, если у вас имеется не один маршрутизатор, а более 10, (как это было в NetWay), вам будет довольно сложно держать такие таблицы в порядке. Вдобавок у абонентов возникнут определенные трудности при смене сетевой карты. Поэтому, такое решение более всего подходит, на мой взгляд, для офисного здания, заполненного мелкими фирмами, подключение которых производится по ethernet-технологии, так как уровень "продвинутости" пользователей обычно невысок, а любую смену сетевой карты можно легко отследить.

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

И если все введено правильно, то появляется возможность открыть или закрыть свой ip (работу по закрыванию/открыванию проделывают скрипты, меняющие правила для фаервола). Такой способ, конечно, надежнее первого, он позволяет, например, открывать свой адрес по желанию на "внутри" и на "внегород" (предположим, есть дети, которых не хочется во допускать в дорогой "внегород"). Но есть минусы и у этого способа.

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

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

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

Были написаны и протестированы сервер под linux и freebsd, клиенты по linux, freebsd и win32.

С реализацией оконной версии под win32 мне сильно помог Scorb Станислав Скорб), благодаря его усилиям скомпилированная версия программы-клиента занимает всего 50 килобайт, в оперативной памяти приложение занимает от 70 до 450 килобайт в разные моменты времени (если верить диспетчеру задач win2k). Процессорное время практически не используется. Была реализована возможность авторизовываться на "внутри" или на "внегород", в зависимости от введенного пароля.

Сервер ведет подробные логи, заносятся все попытки обращения к серверу, это значительно облегчит выявление атак и взломов. Мы с Нагом тестировали ее месяц в офисе, после чего авторизация была запущена на Визе и Автовокзале-Московской Горке.


Так выглядит клиент под win32. Минимум настроек. Полная дуракоустойчивось. Для разделения "внегорода" и "внутригорода" используется разный пароль. В зависимости от уровня доступа, меняется иконка в трее.

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

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

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

Я скачивал клиентскую версию под виндоус (под юникс клиента нет) - бинарник занимает 500Кб, в оперативке до 2-х Мб, по-видимому программа написана на Делфи. Размеры достаточно большие для такого рода утилиты.

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

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

Забавное фото.

"3com на трудовом посту".

От редакции: если у вас есть чем поделиться с коллегами по отрасли, приглашаем к сотрудничеству
Ссылка на материал, для размещения на сторонних ресурсах
/articles/reviews/15630/-a-tyi-ne-voruy-.html

Обсудить на форуме

Оставлять комментарии могут только зарегистрированные пользователи

Зарегистрироваться