GitHub анонсировал внесение в сервис изменений, связанных с усилением защиты протокола Git, применяемого в процессе выполнения операций git push и git pull через SSH или схему “git://” (обращения через https:// изменения не коснутся). После начала действия изменений для подключения к GitHub по SSH потребуется как минимум OpenSSH версии 7.2 или PuTTY версии 0.75. Например, будет нарушена совместимость с SSH-клиентом из состава CentOS 6 и Ubuntu 14.04.
Изменения сводятся к прекращению поддержки нешифрованных обращений к Git (через “git://”) и усилению требований к SSH-ключам, используемым при обращении к GitHub. GitHub прекратит поддержку всех DSA-ключей и устаревших алгоритмов SSH, таких как шифры CBC (aes256-cbc, aes192-cbc aes128-cbc) и HMAC-SHA-1. Кроме того, вводятся дополнительные требования к новым RSA-ключам (будет запрещено применение SHA-1) и реализуется поддержка хостовых ключей ECDSA и Ed25519.
Изменения будут доводиться постепенно. 14 сентября будут сгенерированы новые хостовые ключи ECDSA и Ed25519. 2 ноября будет прекращена поддержка новых ключей RSA на базе SHA-1 (ранее сгенерированные ключи продолжат работу). 16 ноября будет прекращена поддержка хостовых ключей на базе алгоритма DSA. 11 января 2022 года в качестве эксперимента будет временно прекращена поддержка старых алгоритмов SSH и возможность обращения без шифрования. 15 марта поддержка старых алгоритмов будет окончательно отключена.
Дополнительно можно отметить внесение в кодовую базу OpenSSH изменения по умолчанию отключающего обработку RSA-ключей на базе хэша SHA-1 (“ssh-rsa”). Поддержка RSA-ключей с хэшами SHA-256 и SHA-512 (rsa-sha2-256/512) оставлена без изменений. Изменение внесено в связи с повышением эффективности коллизионных атак с заданным префиксом (стоимость подбора коллизии оценивается примерно в 50 тысяч долларов).
Для проверки применения ssh-rsa в своих системах можно попробовать подключиться по ssh с опцией “-oHostKeyAlgorithms=-ssh-rsa”.