Аутентификация в SSH v.2
Ээ чё? В SSH v2 аутентификация с ключами разве не взаимная? Если сервер не знает открытого ключа клиента, то клиент разве не должен разорвать соединение?
|
||||||||||||||||||||||||
|
||||||||||||||||||||||||
Нормы пользования. Некоторые права на материалы сайта защищены по условиям лицензии CreativeCommons. Движок
openSpace 0.8.25a и дизайн сайта © 2006-2007 Vlad "SATtva" Miller.
|
||||||||||||||||||||||||
VPN может быть по разным протоколам и портам, есть надстройки с маскировкой трафика для использования в странах типа Китая, есть туннельные транспорты через разные другие протоколы. Есть малоизвестные приватные решения. Всё затрахаются блокировать.
Фи. С цензурой надо бороться так
Большая проблема — та, что при MITM'е, когда клиент ещё не знает правильный отпечаток сервера и использует парольную аутентификацию, атакующий может легко перехватить его пароль.
Парольная аутентификация на SSH в наши дни — атавизм, от которого уже давно нужно избавиться.
С аутентификацией по ключам можно полностью защититься от митма, даже если клиент игнорирует смену сертификата – самое простое, клиент подписывает свой ключ диффи-хеллмана, это не спасет от ложного сервера (разве что сервер аутентифицируется перед клиентом знанием открытого ключа), но не даст митмеру аутентифицироваться на сервере, не имея секретного ключа, а если использовать открытый ключ DH клиента, то митмер не узнает сеансового ключа DH и пролетит.
В ssh все гораздо интереснее. Сначала идет установление зашифрованого канала, а потом идет отдельно! идет аутентификация. Клиент подписывает определенный блок значений, включая сессионный ключ, сервер это проверяет. От митма это защищает по чистой случайности, и то не при всех конфигурациях – например, если вместо DH используется только RSA, то не защищает. Также не надо забывать про downgrade. ОЛОЛО ОТСОС.
А ведь так хорошо начали.
1 – первым делом пробуем войти с другого провайдера, через vpn, с другого сервера, и.т.д. Если удалось получить прежний отпечаток – митмит ваш провайдер. Шлем его нафиг либо используем vpn на постоянной основе.
2 – митмит ваш хостер, либо на сервере глюк. Пишем в поддержку вопрос "чозанах". Атаку сняли – забираем данные, затираем диски и валим от этого хостера нафиг.
3 – атака продолжается. пробуем войти по другим защищенным протоколам (ftps, https, и.т.д.) чтобы забрать данные и потереть их с сервера.
4 – если сервер на колокейшен – приезжаем к хостеру и забираем его. Данные с дедика можно забрать с помощью такой хитрости: заблаговременно пишем скрипт который сразу и навсегда блокирует вход в систему, перекачивает данные (например дамп dd) на ваш новый сервер в зашифрованном gpg виде, по окончании этого процесса вайпит всё нафиг. Соглашаемся со сменой ключа и мгновенно запускаем этот скрипт. Атакующий получает контроль над сессией и узнает ваш пароль, но ничего не успевает сделать. Есть риск что атакующий прервет сессию сразу после получения пароля и больше вас не пустит. Тогда ой.
5 – вы дошли до этого пункта и ничего не помогло? Надеюсь вы шифровали диски на сервере и на нем есть скрипт отключающий их при подозрении на атаку, длительном невходе админа, и.т.д. Вам следует дождаться когда криптодиски будут заведомо отключены и попробовать забрать данные несмотря на атаку. Если шифрование не использовалось, вы ССЗБ и хостер вас поимеет полюбому.
Во-первых, новые версии SSH поддерживают PKI. Кому хочется, можно использовать, как и многие другие альтернативные способы аутентификации (по одноразовым паролям и т.д.).
Да, есть. Но на pgpru преимущественно обсуждается анонимность и безопасность малых неформальных сообществ или отдельных лиц. С апскейлингом таких решений будет туго, да.
А вот привыкайте, да. Я тоже постоянно сталкиваюсь с таким. Пишешь, пишешь, а в ответ приходит какой-то Гость (17/04/2013 01:00) и, пользуясь
свободой словавседозволенностью на форуме, поливает всё говном. Потом ещё администратор придёт и добавит "это интернет, детка, тут могут и нах послать", "не делайте из нас башню из слоновой кости".Если атакующий смог похитить серверные ключи из /etc/ssh, никто ему не мешает так же забрать и клиентские ключи из ~/.ssh/authorized_keys.
Если клиент не заинтересован в безопасности, он всегда сможет её саботировать. На мой взгляд, глупо обсуждать протокол, при котором клиента принуждают веси себя безопасно. Можно вывести предупреждение хоть на весь экран и красными буквами, но если клиент намеренно игнорирует, что тут поможет? Это один из ключевых моментов протокола.
Вы хотите, чтобы у протокола был дизайн, полностью устойчивый к краже ключа и полной компрометации? Хотите невозможного? В ssh сделали то, что могли. Представьте себе случай PGP-шифрованной переписки двух лиц, при которой атакующий похищает приватный ключ одной из сторон. Кардинальных отличий между этим случаем и ssh не вижу.
Там DH по умолчанию же вроде? Использование RSA — это что? Какие-то дополнительные опции в sshd_config, отключенные по умолчанию? Или случай, когда клиент сгенерил RSA-ключ вместо DSA для аутентификации себя перед сервером (ssh-keygen -t dsa или -t rsa)? Насчёт downgrade до RSA — это возможно всегда в дефолтной конфигурации ssh-сервера?
В дефолтной конфигурации спасает? Если нет, то что необходимо изменить в конфигурации клиента/сервера?
комментариев: 9796 документов: 488 редакций: 5664
Это где-то написано?
Ну я тоже послать могу, дальше что?
Я описал ситуацию, где этот подход неприменим. Не надо быть таким твердолобым и думать, что мир на Вас и Ваших проблемах замкнулся.
Компрометации закрытого ключа клиента нет. Читать научитесь, чтоли.
https://www.pgpru.com/comment63274
1. А с какого хрена я должен что-то предлагать?
2. Я уже предложил – хотя бы подписаный диффи-хеллман, или Вам эти каракули ни о чем не говорят? Алсо, смотреть в сторону SSL.
Есть такая вещь, как простановка ссылок в самом тексте. Вам не понять.