Modelo de segurança
O que o agente InfraFence acessa no seu servidor e por quê, o que envia ao painel, como os tokens são guardados, como as versões são assinadas, os recursos de IA e a licença BSL 1.1.
Última atualização:
Rodar um agente de segurança significa dar a ele root nos seus servidores. Esta página diz exatamente o que ele faz com isso.
Por que root
O agente gerencia o firewall (iptables e ipset), lê os logs e o estado da rede do sistema e aplica as correções que você pede. Tudo isso exige root. Ele roda como um único binário estático sem dependências, como um serviço que você pode parar a qualquer momento.
O que ele lê
| O quê | Por quê |
|---|---|
O log de autenticação SSH (journal do systemd, /var/log/auth.log ou /var/log/secure) |
Força bruta, risco de sessão |
| Logs de acesso do servidor web, audit log do ModSecurity | Firewall web, bots |
| Logs de e-mail, banco de dados e FTP | Força bruta nesses serviços |
Pacotes DNS (porta UDP 53, somente leitura) e tabelas de conexões em /proc |
Ameaças de saída e DNS, varreduras de portas |
Arquivos dos sites, incluindo .env e arquivos de configuração |
Varredura de malware, verificações de frameworks |
Posts, opções e usuários do WordPress (com as credenciais de wp-config.php) |
Varredura do banco de dados do WordPress |
| Processos em execução | Mineradores de criptomoedas, reverse shells |
| Arquivos de sistema observados (contas, sudoers, chaves SSH, cron, unidades systemd) | Integridade de arquivos |
| Pacotes instalados e versões | Vulnerabilidades (CVE) |
| O socket do Docker, somente leitura, quando o Docker está presente | Logs e portas dos contêineres |
O que ele altera
- As próprias chains de firewall e ipsets. As suas regras nunca são modificadas, e ele nunca adiciona um
ACCEPT. - Só quando você ativa Permitir alterações na configuração do servidor web: as regras ModSecurity dele e o bloqueio de user agents no nginx ou no Apache.
- Só quando você, o AutoMode ou o modo de emergência pedem: correções de hardening em arquivos próprios, portas fechadas, bloqueios de saída, patches virtuais, atualizações de segurança, arquivos em quarentena.
Toda alteração no servidor é verificada depois e desfeita se o SSH ou um site parar de responder. A desinstalação remove tudo isso.
O que ele envia
Tudo vai para o painel por HTTPS:
- um heartbeat a cada 60 segundos: versão do agente, endereço, métricas do sistema (CPU, memória, disco, carga, rede), serviços e portas em escuta, o servidor web e os domínios que ele serve, contadores do firewall;
- eventos de segurança: endereço do atacante, tipo, horário e os detalhes necessários para entendê-los; para um ataque web, a única linha de log que o disparou; para malware, o caminho do arquivo e o texto que deu correspondência;
- a lista de pacotes instalados, para a verificação de vulnerabilidades;
- o SHA-256 dos arquivos PHP varridos, para procurá-los entre os arquivos de malware conhecidos.
Logs completos e arquivos nunca saem do servidor. Nenhuma telemetria, nada compartilhado com terceiros, exceto nos recursos de IA abaixo.
Tokens
- O token de instalação é de uso único, vale uma hora e não é mantido no servidor depois do registro.
- O token do próprio agente fica em
/etc/infrafence/config.json, legível só pelo root. O painel guarda só um hash dele, então uma cópia do banco de dados do painel não contém tokens de agente utilizáveis. As chaves de cluster do Kubernetes também são guardadas como hash e mostradas uma única vez. - As alterações vindas do painel chegam por um canal em tempo real que só avisa o agente para sincronizar: o agente então busca a configuração por HTTPS com o próprio token. Uma mensagem nesse canal nunca é tratada como instrução confiável.
Versões assinadas
Cada versão é compilada pelo GitHub Actions, assinada com Cosign e publicada com proveniência de build. O agente só instala uma atualização se o checksum e a assinatura forem verificados com a chave pública embutida nele, e só a partir das versões oficiais no GitHub. Veja Verificar uma versão.
Recursos de IA
Os recursos de IA rodam no painel, nunca no agente. Quando você pede uma análise por IA, usa o assistente ou redige um relatório, e enquanto o AutoMode ou o modo de emergência estiver ligado, os eventos necessários são enviados à Anthropic para produzir a resposta. O painel avisa isso toda vez, antes do envio. A análise instantânea, disponível em todos os planos, não envia nada para lugar nenhum.
Quando o painel está inacessível
A proteção continua ativa. Veja Quando o painel está inacessível.
Licença
O agente é source-available sob a Business Source License 1.1 (licenciante: ComCart S.r.l.). O uso em produção é gratuito em qualquer número de servidores, incluindo os servidores dos seus clientes, desde que você não o use para construir um produto concorrente. Quatro anos depois de cada versão, essa versão passa a estar disponível sob a Apache License 2.0. Você pode ler e auditar cada linha em github.com/infrafence/infrafence-agent. Os plugins de painel estão sob a mesma licença.
