O blog de segurança da FireAI

Por FireAI Security & Research Team · Publicado

Segurança do GitHub Copilot CLI no Mac: acompanhe as conexões dele

Segurança do GitHub Copilot CLI no Mac: acompanhe as conexões dele

O GitHub Copilot CLI leva um agente de programação ao terminal. Ele pode editar arquivos, executar comandos e trabalhar com repositórios, issues e pull requests. Quem pesquisa “github copilot cli security” ou “is Copilot CLI safe” quer saber, sobretudo, o que ele pode executar e o que envia para fora. Este artigo resume a própria documentação do GitHub e mostra como o FireAI, um firewall de rede para macOS desenvolvido pela HisnLabs, acompanha as conexões dele.

O que é o Copilot CLI e como ele roda em um Mac

O repositório diz que a ferramenta é feita pelo GitHub e usa a mesma estrutura agêntica do agente de programação do Copilot. Ela oferece suporte a macOS, Linux e Windows e se instala com npm (npm install -g @github/copilot), Homebrew (brew install copilot-cli) ou um script de instalação. Você faz login com o comando /login ou com um token de acesso pessoal que tenha a permissão Copilot Requests, fornecido como GH_TOKEN ou GITHUB_TOKEN. Ela funciona em modo interativo e em modo programático com a flag -p, vem com o servidor MCP do GitHub por padrão e aceita servidores personalizados.

O que ele pode acessar

A documentação do GitHub diz que, dentro de diretórios confiáveis, o Copilot pode ler, modificar e executar arquivos, e que o agente trabalha com o GitHub.com por meio da sua conta autenticada. Como pode executar comandos, ele também pode abrir conexões de rede, por exemplo por meio de curl ou git.

O modelo de permissões documentado

  • Diretórios confiáveis: você confirma a confiança no diretório em que inicia a CLI. A documentação desaconselha iniciá-la a partir da sua pasta pessoal ou de locais com executáveis não confiáveis.
  • Aprovação de ferramentas: para ferramentas que modificam ou executam, como rm, node ou sed, o Copilot pede que você aprove uma vez, aprove para a sessão ou recuse e sugira uma alternativa.
  • Flags: --allow-tool='shell(COMMAND)' e --deny-tool='shell(COMMAND)' definem regras por comando, e --deny-tool tem precedência. --allow-all-tools ignora as aprovações e, nas palavras da documentação, dá ao Copilot o mesmo acesso que você tem.

Para esse último caso, a documentação sugere sandboxes locais ou na nuvem ou máquinas virtuais isoladas. A página consultada não detalha quais dados são transmitidos ao GitHub ou aos provedores de modelos, então, para os destinos exatos, você deve contar com a observação. É a situação que a OWASP chama de agência excessiva: um agente autorizado a agir sem uma verificação humana a cada passo.

Acompanhar o GitHub Copilot CLI com o FireAI

O FireAI é um firewall para macOS que roda no próprio Mac, desenvolvido pela HisnLabs. O recurso Agent profile lista o GitHub Copilot CLI entre os 19 agentes de IA que reconhece e, como o Copilot CLI roda sob o node, o identifica pelo script que o runtime executa, como o Agent profile faz com agentes node, bun, deno e python. Os processos filhos do agente, como um shell, git ou curl que ele inicia, são atribuídos a ele subindo pelos processos pais. Em seguida, o FireAI aprende, nos primeiros 3 dias, quais destinos o GitHub Copilot CLI normalmente contata, agrupados por domínio, e não sinaliza nada durante esse período. Depois disso, um destino inédito é sinalizado em Sugestões, no cartão Agentes de IA e na Revisão rápida. Um pico de envio também é sinalizado: uma hora em que o agente enviou pelo menos 4 vezes o volume da sua hora mais intensa até então, e nunca menos de 25 MB.

O FireAI usa apenas metadados, nomes de host e contagens de bytes, e nunca lê o conteúdo de uma conexão. Por padrão, ele sinaliza e deixa a decisão com você. No modo de segurança Perfil de agente, ele vai além: terminado o aprendizado, uma conexão a um destino fora da referência fica bloqueada até você tocar em Permitir, e Manter bloqueado transforma esse bloqueio em uma regra que vale em todos os modos.

Configuração, passo a passo

  1. Instale o FireAI e conclua a configuração inicial, seguindo Instale o FireAI e conclua a Configuração.
  2. Use o GitHub Copilot CLI como de costume por 3 dias. O FireAI aprende os destinos dele em segundo plano e ainda não sinaliza nada.
  3. Abra Sugestões e encontre o cartão Agentes de IA. Quando um sinal aparecer, leia a frase em palavras simples e deslize para a esquerda na Revisão rápida para bloquear ou para a direita para “Está tudo bem”.
  4. Se você quer que o agente fique nos lugares que já usa, escolha Perfil de agente no menu de modo de segurança, ao lado de Casa, Cafeteria, Paranoico e Sob ataque.
  5. Quando algo for bloqueado, abra o cartão Agentes de IA e escolha Permitir para adicioná-lo à referência ou Manter bloqueado para criar uma regra de bloqueio.

Limites

  • O FireAI não impede a injeção de prompt. Ele limita o dano ao sinalizar, e deixar você bloquear, o caminho que os dados tomariam para sair do seu Mac.
  • O FireAI não vê os prompts do GitHub Copilot CLI, o conteúdo de ferramentas MCP, as skills nem quais arquivos ele lê, porque o TLS oculta o conteúdo e o FireAI não está dentro do agente.
  • O Copilot CLI é associado pelo nome do script, então o FireAI o identifica pelo nome em vez de verificá-lo: só o Claude Code, o Claude e o Cursor são conferidos pela assinatura do desenvolvedor.
  • As conexões feitas pelos programas gh ou git são associadas pela árvore de processos, ou seja, pelo caminho, e processos filhos que terminam muito rápido podem passar despercebidos.
  • O FireAI não lê aprovações nem comandos, então não consegue dizer qual comando abriu uma conexão.
  • Durante o período de aprendizado de 3 dias nada é sinalizado, e os picos de envio são sinalizados, não bloqueados.
  • Um novo servidor sob um domínio que o agente já usa é tratado como conhecido, porque os destinos são agrupados por domínio.

O recurso está descrito na documentação do Agent profile.

Outros agentes que o FireAI reconhece têm seus próprios guias: Claude Code, app Claude para desktop, Cursor, app ChatGPT para Mac, OpenAI Codex CLI, OpenClaw, Hermes Agent, Gemini CLI, Amp, Qwen Code, opencode, Aider, Goose, Crush, Windsurf, Kiro, Trae, Muse da Meta, qualquer agente de IA executado por Python ou Node.

Onde FireAI e HisnLabs entram nessa história

O Copilot CLI pode executar comandos depois que você os aprova. O FireAI mostra, e pode bloquear, para onde ele se conecta em seguida.

O FireAI é o produto da HisnLabs: um firewall com IA que roda direto no seu Mac. Ele mostra, em linguagem simples, cada conexão que seus aplicativos fazem e deixa você decidir o que sai do seu Mac — a IA roda localmente, então seu tráfego nunca é enviado para nós nem para ninguém. A equipe de pesquisa em segurança da HisnLabs é quem mantém essas decisões confiáveis: cataloga quais domínios são telemetria comum e quais são um serviço de verdade, rastreia o país e a rede por trás de uma conexão e treina o modelo local (o recurso FireAI Pilot) com padrões reais de tráfego, sem que nada disso saia do seu Mac.

Você pode ler as decisões técnicas por trás dele, ou testar o FireAI por 17 dias, em FireAI, da HisnLabs.

Fontes