LINUX.ORG.RU

можно ли перехватить и модифицировать данные, передаваемые по ssh, если известен секретный ключ

 


0

3

Допустим, есть какая-то прога, вместе с которой поставляется пара ключей ssh. Включена в дистрибутив, не генерируется у клиента при установке, т.е секретный ключ известен всем. Этот ключ используется программой для автоматического захода на публичный сервер через SSH и выполнения там каких-то вещей, например загрузки обновлений, т.е. чисто для автоматической аутентификации на этом сервере. Также вместе c программой поставляется ключ этого публичного сервера в файлике типа known_hosts, этот файлик явно передается клиенту ssh при коннекте.

Так вот, вопрос, уязвима ли данная схема к перехвату передаваемого содержимого и атаке man-in-the-middle, если «секретный» ключ всем известен? Насколько я знаю, нет, ибо сеансовые ключи для шифрования генерируются независимо при помощи алгоритма Диффи-Хеллмана

★★★★★

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

В остальном

OpenSSH provides end-to-end encrypted replacement of applications such as telnet, rlogin, and ftp. Unlike these legacy applications, OpenSSH never passes anything (including username and password) over the wire in unencrypted form <...>

backbone ★★★★★ ()
Ответ на: комментарий от backbone

Последнее, я так понимаю, подразумевает защиту даже в отсутствии пароля/ключа.

backbone ★★★★★ ()

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

segfault ★★★★★ ()
Ответ на: комментарий от segfault

клиент заходит на сервер. Если более детально, SSH нужен для rsync-а, ибо rsync умеет защищенное соединение только через SSH. Так вот, чтобы защитить скачиваемые rsync-ом данные от подмены, используется такая схема

Harald ★★★★★ ()
Ответ на: комментарий от maxcom

каким образом?

Также вместе c программой поставляется ключ этого публичного сервера в файлике типа known_hosts, этот файлик явно передается клиенту ssh при коннекте.

открытый ключ сервера известен заранее и проверяется

Harald ★★★★★ ()
Ответ на: комментарий от Harald

А, ключ клиента, а не сервера. Тогда не будет mitm

maxcom ★★★★★ ()
Ответ на: комментарий от Harald

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

segfault ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.