Libellula

Como a própria plataforma é protegida.

Uma plataforma que observa a superfície de ataque de terceiros é, ela mesma, um alvo de valor. Esta página descreve as medidas concretas — e termina declarando o que não afirmamos.

Medidas

Isolamento por organização na camada de dados

Política de linha no PostgreSQL, em todas as tabelas do esquema do cliente. O papel da aplicação não atravessa a fronteira nem com a consulta errada, e há teste de regressão que falha se alguma tabela deixar de ter política.

Ausência de capacidade ofensiva

A plataforma não tem motor de exploração. Não existe código que escreva, apague ou extraia dado do ativo alvo — nem desabilitado, nem atrás de flag.

Escopo como allowlist

Nada é alcançável sem inclusão explícita, e exclusões prevalecem sobre inclusões. A revalidação acontece no worker, a cada passo, não no enfileiramento.

Trilha imutável

Append-only, encadeada por hash. Não existe rota de edição ou exclusão para nenhum papel, incluindo o proprietário da organização.

MFA obrigatório

Para todos os papéis, sem exceção contratual. Aplicativo autenticador ou chave de segurança (WebAuthn) — esta resistente a phishing, porque a assinatura cobre o domínio que o navegador visitou. Ações de severidade alta exigem reautenticação.

Kill-switch em três níveis

Job, organização e plataforma. Nada retoma sozinho, e a inadimplência não o desativa.

Criptografia e retenção

Criptografia e retenção por tipo de dado
DadoAlgoritmoObservação
SenhaSenhabcrypt, custo 12Verificada dentro do banco; a aplicação nunca vê o hash
Segredo do segundo fatorSegredo do segundo fatorAES-256-GCMCifrado sob a chave da instalação, fora do alcance do papel da aplicação
Chave de segurançaChave de segurançaES256 · RS256 · EdDSASó a metade pública fica aqui; a privada nunca sai do autenticador
Evidência brutaEvidência brutaX25519 + AES-256-GCMSelada pelo motor com a pública, aberta pela aplicação com a privada; 90 dias, depois restam hash e metadados
Trilha de auditoriaTrilha de auditoriaSHA-256Encadeada por hash, append-only. Não é cifrada, e não é apagada
BackupBackupAES-256 (OpenPGP)Cifrado antes de sair da máquina; 35 dias em todos os destinos. A restauração é exercitada contra a cópia remota — não contra uma local —, o tempo medido vai para a trilha, e a rotina está no calendário trimestral
Dado em trânsitoDado em trânsitoTLS 1.3Terminado no proxy da instalação

Residência dos dados

Onde os dados ficam

A aplicação, o motor e o banco operam em infraestrutura brasileira, e a região é nomeada em contrato — não descrita como “região equivalente”.

A cópia de segurança é a exceção, e é declarada em vez de omitida: ela vai para um armazenamento de objeto cuja região é escolhida na criação do bucket. O conteúdo é cifrado com AES-256 antes de sair da máquina — quem hospeda o objeto guarda bytes que não sabe ler.

Modelos de IA

Não há nenhum. O mascaramento de dado pessoal acontece no motor, por regra explícita, antes da persistência — e a tabela de evidência não tem coluna para o valor em claro. Se um dia houver modelo, a regra já escrita é que função que toca dado pessoal só aceita provedor com residência no Brasil ou auto-hospedado.

Divulgação responsável

Porto seguro para pesquisa de boa-fé.

Compromisso

Não iniciamos ação legal nem administrativa contra quem pesquisar nossa plataforma de boa-fé, respeitar os limites abaixo e nos dar tempo de corrigir antes de publicar. Isso vale mesmo que a pesquisa não tenha sido previamente comunicada.

Dentro do porto seguro

  • Testar apenas contas e organizações que você mesmo criou.
  • Parar ao obter a primeira prova de existência.
  • Reportar antes de publicar, e aguardar 90 dias ou a correção.
  • Não acessar, copiar nem reter dado de terceiro.

Fora do porto seguro

  • Negação de serviço, teste de carga ou degradação intencional.
  • Engenharia social contra nossa equipe ou fornecedores.
  • Acesso a dado de organização que não é sua.
  • Extorsão, ou condicionar o relato a pagamento.

[email protected] · /.well-known/security.txt

Ainda não há chave PGP publicada. Quando houver, ela entra no mesmo arquivo — declarada só depois de existir.

Não afirmamos inviolabilidade

Nenhuma plataforma de segurança pode afirmar que não será comprometida, e desconfie de quem afirmar. O que podemos declarar é o que está acima: as medidas concretas, o que a plataforma não é capaz de fazer por construção, e o canal por onde uma falha chega até nós.

Também não usamos, em nenhum material, as expressões “100% seguro”, “risco zero”, “proteção total” ou equivalentes. Elas não descrevem nada verificável.

E não afirmamos, porque hoje não seria verdade: que o banco seja cifrado em repouso pela aplicação (o isolamento é por política de linha, e a cifragem cobre o segundo fator, o bruto de evidência e a cópia de segurança); que exista chave de criptografia por organização.