Пользователи GitHub смогут подтверждать вход в аккаунт при помощи портативных устройств, которые используют протокол FIDO2. Репозиторий предлагает всем разработчикам перейти на такой метод аутентификации.
Новая процедура
Поддержка ключей безопасности для аутентификации по протоколу SSH стала доступна на хостинге ИТ-проектов GitHub 10 мая. Новая возможность обеспечит повышенную защиту от попыток перехвата учетной записи и предотвратит случайное раскрытие секретного ключа.
Разработчикам для доступа к данным, хранящимся в репозитории, по-прежнему необходимо сгенерировать пару из открытого и закрытого ключей. Важное отличие – генерация и хранение секретных битов в ключе безопасности FIDO2, открытая часть которого будет находиться на компьютере пользователя, подобно любым другим открытым ключам SSH. При этом часть закрытого ключа также расположена на устройстве разработчика, но она будет только ссылкой на физический ключ безопасности. Без доступа к носителю эти сведения о нем бесполезны.
До появления поддержки нового метода аутентификации пользователи GitHub чаще всего применяли ключи RSA или ed25519. Сейчас они могут использовать также ecdsa-sk и ed25519-sk.
Преимущества метода
Представители GitHub уверены, что новый способ аутентификации лучше существовавших до этого, поэтому рекомендуют разработчикам отказаться от всех ранее зарегистрированных SSH-ключей в пользу SSH-ключей, поддерживающих токены безопасности.
В репозитории сообщают, что лишь такой метод позволит гарантировать, что управление данными Git своих проектов по SSH доступно единственному пользователю – обладателю ключа безопасности FIDO2. Такой подход избавляет от необходимости контролировать все созданные ранее ключи SSH, потому что они окажутся бесполезны без физического доступа к токену безопасности, с которым они связаны.
Переход неизбежен
GitHub намерен полностью отказаться от аутентификации на сервисе при помощи пароля. Этот метод подтверждения личности будет заблокирован уже 13 августа 2021 года. Для доступа к своим проектам пользователи смогут использовать токены и SSH-ключи. Такие изменения нужны, чтобы защитить разработчиков от злоумышленников, использующих похищенные или взломанные пароли.
Проблемы с безопасностью GitHub в 2019 году обнаружили ученые из университета штата Северная Каролина (NCSU). Они установили, что более чем 100 тыс. репозиториев хостинга стали жертвами утечки токенов API и криптографических ключей (SSH и TLS) после сканирования примерно 13% общедоступных репозиториев в течение полугода. Исследователи также заметили, что примерно из тысячи новых проектов ежедневно утекают данные аутентификации.