O problema

Você usa um agente de IA que edita arquivos e roda comandos sozinho… e se ele deletar seu banco de dados ou enviar suas chaves de API para um servidor estranho por engano?

O SyscallCage resolve isso observando o que o agente faz, direto no kernel Linux (usando eBPF), e parando o processo no milissegundo em que ele tenta violar uma regra de segurança.

O SyscallCage não isola o agente em uma máquina virtual lenta. Ele deixa o agente trabalhar exatamente onde ele já estava trabalhando — e observa, no nível mais fundo do sistema, se algo passa da linha. É a diferença entre trancar alguém numa sala vazia versus ter um segurança de confiança olhando o que a pessoa faz na sala de sempre. O resultado prático: você não perde velocidade nem muda seu fluxo de trabalho para ganhar segurança.

O que o SyscallCage faz

Como instalar

[!NOTE] O instalador rápido automatizado (curl -fsSL https://syscallcage.dev/install.sh | sh) estará disponível assim que o domínio de distribuição for publicado. Por enquanto, a instalação recomendada é compilando o projeto a partir do código-fonte:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
# 1. Clone o repositório oficial
git clone https://github.com/rodrigoffreir3/syscallcage.git
cd syscallcage

# 2. Compile o bytecode eBPF e o userspace CLI
cargo build --release

# 3. Mova os executáveis para o seu diretório local de binários
mkdir -p ~/.local/bin
cp target/release/syscallcage target/bpfel-unknown-none/release/syscallcage-ebpf ~/.local/bin/

Depois de instalar, verifique se o seu ambiente Linux está pronto para rodar o SyscallCage:

1
syscallcage doctor

Como usar

Primeiro, escreva um arquivo pequeno YAML descrevendo a política de segurança (sua-politica.yaml):

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
mode: enforce

filesystem:
  allow_read:
    - "/home/usuario/projeto/**"
  deny_always:
    - "**/.env"
    - "**/.ssh/**"

network:
  allow_domains:
    - "api.openai.com"
    - "github.com"

Depois, aponte o SyscallCage para o PID do seu agente de IA:

1
sudo syscallcage --pid <PID-do-agente> --policy sua-politica.yaml

Pronto. O SyscallCage fica vigiando silenciosamente até o agente terminar a tarefa de forma segura.

Não sabe quais regras declarar?

Deixe o SyscallCage descobrir sozinho através de uma sessão real de observação:

1
2
3
sudo syscallcage --pid <PID> --policy configs/observar.yaml --log-file sessao.jsonl
# deixe seu agente executar as ações normalmente...
syscallcage generate-policy --from-log sessao.jsonl --output minha-politica.yaml

O gerador cria uma política mínima e segura automaticamente, deixando fora por padrão qualquer arquivo de configuração sensível ou comando hostil detectado.

Código-fonte

Todo o código é livre, aberto e documentado: