Chave SSH copiada ou agente encaminhado? Dois riscos diferentes
Uma assinatura não é um ficheiro de chave, e um agente delegado não é uma divulgação. Separe o facto do protocolo da questão de confiança no ponto final e depois responda.
Um início de sessão que usa uma chave SSH através de uma VPN não significa que a chave privada tenha sido entregue ao operador da rede, e essa tranquilização é mais estreita do que as pessoas ouvem. A autenticação por chave pública envia uma chave pública e uma assinatura que o cliente produz localmente. O encaminhamento de agente é uma disposição diferente com uma exposição diferente, e pode deixar uma capacidade de autenticação utilizável numa máquina que não controla. A resposta que deve depende de qual das duas situações aconteceu realmente.
O que a autenticação por chave pública envia
No método padrão de chave pública o cliente oferece uma chave pública, o servidor decide se aceita essa chave, e o cliente assina um desafio com a chave privada, que permanece no seu ficheiro ou no seu agente. O que atravessa a rede é a chave pública e a assinatura resultante. Nada nessa troca exige que o servidor, o túnel ou alguém no caminho detenha o material privado.
A especificação de autenticação define essa prova, e a chave privada não é um campo do pedido.
Isso é uma afirmação sobre um protocolo, não uma referência de carácter para cada ponto final envolvido. A verificação da identidade do anfitrião tem de continuar intacta, porque um servidor que não consegue provar quem é pode estar a recolher assinaturas para um fim que não pretendia. Uma VM alugada, um bastião herdado e um portátil com uma extensão desconhecida são três perguntas de confiança separadas. Mantenha-as separadas da criptográfica, que está genuinamente resolvida.
O que o encaminhamento de agente delega
O encaminhamento de agente abre um canal do anfitrião remoto de volta para o agente na sua máquina, para que os processos desse anfitrião possam pedir ao agente que assine sem nunca deter a chave privada. A chave fica onde está, e a capacidade não. Qualquer coisa que consiga alcançar esse socket encaminhado no anfitrião remoto, durante a vida da sessão, pode pedir operações de autenticação como uma das identidades carregadas. Isso é autoridade delegada, e é por isso que o encaminhamento merece uma política mais estreita do que entregar uma chave pública.
Um ficheiro de chave copiado é uma divulgação. Um agente encaminhado é uma autorização, e os dois precisam de respostas diferentes.
Ative o encaminhamento para uma necessidade nomeada e anfitriões nomeados, e verifique o que o cliente faz realmente em vez do que a configuração parece dizer. O que conta são as definições efetivas, porque um bloco de anfitrião substitui silenciosamente um valor global predefinido. O mesmo raciocínio aplica-se do lado do servidor, que pode recusar completamente o encaminhamento quando a implementação nunca precisa dele.
Leia as provas antes de escolher uma resposta
Se se acredita que um ficheiro de chave privada ou uma identidade de assinatura equivalente foi exposto, a resposta é a substituição e a revogação através do processo da sua organização, além da remoção da sua aceitação de cada serviço que confiava nele. Apagar uma cópia local não invalida as cópias que não vê.
Se a preocupação é um acesso temporário do agente, a resposta é mais estreita: pare a delegação desnecessária, reveja as sessões e identidades envolvidas, e deixe o responsável pelo incidente decidir se a substituição se justifica. As provas importam aqui, porque a ausência de uma exportação observada não prova que nenhuma autenticação foi indevidamente usada, e uma mudança de caminho por si só não é um diagnóstico de chave roubada. Registe qual o componente em que se confiava, se o encaminhamento estava ativo e o que foi realmente observado. Depois escolha a resposta que se adequa a esse registo em vez da mais dramática disponível.
ssh-add -l
ssh -G host.example | grep -i forwardagent
Execute-os antes e depois de uma alteração para que a comparação signifique algo. Uma sessão estabelecida antes mantém a delegação que lhe foi concedida, diga o que disser a configuração agora.
Dois controlos que não são intermutáveis
Proteger o material privado, limitar quem pode pedir a sua assinatura e verificar a identidade da contraparte são três controlos relacionados, e nenhum substitui o outro. Uma equipa que remove o encaminhamento sem verificar as chaves de anfitrião corrigiu metade de um problema. Uma equipa que roda uma chave porque a rota mudou não corrigiu nada.
Um ponto final comprometido é uma quarta pergunta, porque software privilegiado na sua própria máquina pode fazer bastante mais do que observar pacotes.
Classifique o incidente nessas categorias antes de tocar em nada, e dê a cada uma um responsável. Mantenha um registo breve do que era de confiança, do que foi delegado e do que foi verificado, porque esse registo é o que torna a próxima revisão barata em vez de outro debate. Se alguma categoria for desconhecida, escreva desconhecida em vez de assumir o caso benigno. A distinção é prática, não académica: decide se substitui uma credencial, revoga uma sessão ou simplesmente deixa de encaminhar.