Издательский дом ООО "Гейм Лэнд"СПЕЦВЫПУСК ЖУРНАЛА ХАКЕР #58, СЕНТЯБРЬ 2005 г.

Безопасность сетевых протоколов

ЗАРАЗА

Спецвыпуск: Хакер, номер #058, стр. 058-084-4


Проблемы "монстроидальных" протоколов

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

POPv3 - достаточно легковесный протокол с минимальным набором команд для получения почты. IMAPv4 – грузный монстр, который предназначен для реализации почты в "легком" клиенте: в нем все функции (сортировки, поиска и хранения сообщений, анализа структуры сообщения, работы с вложенными файлами и т.д.) перекладываются на сервер. К чему это привело? К тому, что кроме единственной программы pine, написанной самими разработчиками протокола, никто не поддерживает IMAPv4 в полном объеме. Ни одна другая программа, включая все популярные почтовые агенты, не использует никакой функционал IMAP, которого не было бы в POP (широкая общественность глубоко заблуждается, думая, что POP3 не поддерживает хранение писем на сервере, просмотр части сообщения, выборочное получение или удаление сообщений). В тоже время IMAPv4 позволяет работать, например, с любыми файлами, находящимися на сервере, за пределами почтовой папки или ящика пользователя, о чем администраторы очень часто даже не догадываются. Набор утилит (www.security.nnov.ru/files/imaptools.tgz) позволяет просматривать, получать и удалять любые файлы с правами почтового пользователя через сервер imap-uw.

2. Общие проблемы различных протоколов - аутентификация пользователя

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

Что можно сказать о наиболее распространенных протоколах?

Протокол передачи почты SMTP (действующим стандартом является RFC 821, более свежий RFC 2821 не получил такого статуса и, скорее всего, никогда не получит) не предусматривает аутентификации пользователя. По идее это означает, что SMTP-сервисом может пользоваться любой желающий, и каждая же собака сможет подменить адрес отправителя сообщения или разослать спам через почтовый сервис. На практике используется аутентификация и авторизация (определение, какими именно функциями сервера может пользоваться клиент) по IP-адресу. Как правило, почтовый сервер не позволяет клиентам "чужих" сетей использовать сервер в качестве релея, то есть отправлять почту кому-либо, кроме получателей, обслуживаемых данным сервером. Имеется расширение протокола SMTP - C 2554, которое предусматривает возможность аутентификации и подразумевает, что основным методом аутентификации должна быть аутентификация по методу запрос-ответ. Однако на практике наиболее распространенным и совместимым методом является AUTH LOGIN, при котором логин и пароль пользователя передаются в открытом виде. Проверить, какие протоколы аутентификации поддерживаются сервером, можно с помощью команды EHLO:

Назад на стр. 058-084-3  Содержание  Вперед на стр. 058-084-5