Segurança

Relate. Nós corrigimos.

Se você encontrar uma vulnerabilidade no CommandAGI, avise-nos em particular primeiro. Lemos cada relato e respondemos.

Relatando uma vulnerabilidade

Envie um e-mail para security@commandagi.com. Inclua:

  • o que você encontrou, e onde (uma URL, uma rota de API, um pacote ou um arquivo);
  • os passos para reproduzir, e o que um atacante poderia fazer com isso;
  • como falar com você, e se você deseja ser creditado.

Dê-nos um prazo razoável para corrigir o problema antes de divulgá-lo. Não acesse dados de outras pessoas além do necessário para mostrar o problema, não degrade o serviço e nunca envie comandos a uma máquina que você não possui.

No escopo

  • commandagi.com, developers.commandagi.com e api.commandagi.com
  • o aplicativo de desktop e o host local que ele executa
  • os pacotes commandagi no npm e no PyPI

Os dados de contato legíveis por máquina estão em /.well-known/security.txt.

Por desenho

Como o produto se protege.

A autoridade é um ato de pessoa

Só uma pessoa cria ou amplia uma concessão. Uma chave de agente não pode conceder a si mesma, nem a outro agente, nada.

Os principais são comprovados

Um principal age com uma credencial, nunca por declarar quem é. O host guarda apenas o hash da credencial.

Registrado antes de enviar

Cada ação em uma máquina é escrita na sua execução, com quem a enviou, antes de o driver ser chamado.

Os segredos ficam fora dos arquivos

Os segredos de conexão ficam no armazenamento de segredos do host ou na memória — nunca em um mundo, uma definição, configurações, um fluxo ou uma linha de registro.

Loopback por padrão

O host local escuta somente em 127.0.0.1, e os seus endpoints de controle recusam pedidos vindos de uma página web.

As chaves são hasheadas

As chaves de API são guardadas como hash, nunca como a própria chave.