Как извлечь закрытые ключи из ssh-агента?

ssh-add -l дисплеи, что у меня есть 3 ключа RSA, добавленные к моему агенту SSH.

ssh-add -L дисплеи те открытые ключи.

Как я получаю закрытые ключи также, так, чтобы я мог сохранить их в файл? Или это дизайном, что это невозможно? Как это работает затем?

Ssh-агент можно попросить сделать операции с помощью закрытого ключа? Как я могу попросить, чтобы это шифровало/дешифровало число для меня?

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

14
задан Vanuan 5 February 2019 в 13:46
поделиться

1 ответ

Невозможно получить закрытый ключ или выполнить шифрование, используя протокол между ssh и ssh-агентом, но можно получить закрытый ключ путем дампа памяти ssh-агента. В Linux вы должны быть root, чтобы сделать дамп памяти.

Я только что нашел очень хорошее объяснение того, как работает ssh-agent: http://www.unixwiz.net/techtips/ssh-agent-forwarding.html . Это частично отвечает на некоторые из моих вопросов.

  • Одним из наиболее умных аспектов работы агента является то, как он может проверять личность пользователя (или, точнее, владение закрытым ключом), не раскрывая этот закрытый ключ никому.

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

Таким образом, протокол между SSH-клиентом и ssh-агентом не позволяет ни в SSH1, ни в SSH2 получить закрытые ключи от ssh-агента.

Однако, как root, вы можете получить дамп памяти ssh-агента и попытаться извлечь закрытый ключ оттуда. https://blog.netspi.com/stealing-unencrypted-ssh-agent-keys-from-memory делает именно это, и есть другие программы, упомянутые в разделе комментариев на этой странице. Однако, программы с этой страницы не сработали у меня на Debian buster: дамп памяти не содержал ключей, хотя ssh-add -l отобразил RSA ключ.

7
ответ дан 1 December 2019 в 16:39
поделиться
Другие вопросы по тегам:

Похожие вопросы: