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

ДЛИННЫЕ РУКИ ПРАВИЛЬНОЙ ОСИ

Vitls (vitls@chat.ru)

Спецвыпуск Xakep, номер #032, стр. 032-068-2


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

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

ОТКУДА ВЗЯЛСЯ SSH?

Недостатки в безопасности можно обойти, если шифровать траффик между сервером и клиентом. Не мы одни такие умные, и спецификации безопасного шелла (secure shell) под названием ssh были опубликованы в соответствующем документе rfc (http://www.free.lp.se/fish/rfc.txt).

В настоящий момент широко известны две реализации протокола. Одна из них делается коммерческим предприятием SSH Inc.(http://www.ssh.com) и закрыта, хотя программа бесплатна для некоммерческого использования. Вторая реализация поддерживается проектом OpenSSH (http://www.openssh.org), исходные тексты которого открыты и лицензионно свободны. Обе реализации совместимы друг с другом. Клиент из пакета проекта OpenSSH вполне прекрасно работает с сервером из поставки компании SSH Inc.

Протокол существует в двух версиях, несовместимых друг с другом. Это означает, что клиент версии ssh1 не будет работать с сервером ssh2 и наоборот. Это связано с использованием разных алгоритмов шифрования траффика и изменениями в процедуре установления сессии. В версии ssh1 были обнаружены недостатки как в алгоритмах шифрования, так и в программах. Знаменитый эксплоит SSHNuke против ssh1 был использован Тринити в фильме Матрица-2. Так как ssh1 практически нигде не применяется, дальнейшее мое повествование будет касаться программ версии ssh2.

Свободная и коммерческая реализации ssh2 содержат практически одинаковый набор программ. Приведу некоторый список:

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

ssh - программа клиент, используемая для входа на удаленную машину или для выполнения команд на другой машине.

scp - секретное копирование файлов с одной машины на другую.

ssh-keygen - используется для создания RSA ключей машины и пользователя (host keys and user authentication keys).

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

ssh-add - используется для регистрации новых ключей с агентом.

sftp - защищенный клиент ftp. Серверная часть обеспечивается демоном sshd.

Назад на стр. 032-068-1  Содержание  Вперед на стр. 032-068-3