O que é a Tríade CIA

A Tríade CIA é o modelo fundamental da segurança da informação. Ela define três propriedades que todo sistema deveria garantir:

  • Confidentiality (Confidencialidade) — só pessoas autorizadas podem ver a informação
  • Integrity (Integridade) — a informação não pode ser alterada por pessoas não autorizadas e deve estar sempre correta
  • Availability (Disponibilidade) — você consegue acessar a informação quando precisa

Toda vulnerabilidade, todo ataque e toda defesa podem ser classificados em função de qual desses pilares está sendo violado ou protegido. Se você entende a Tríade CIA, você tem um framework mental para avaliar qualquer decisão de segurança.


Confidencialidade

Confidencialidade significa que somente pessoas autorizadas podem acessar a informação. Se alguém sem permissão consegue ler dados que não deveria, a confidencialidade foi violada.

Exemplos de violação

Web Cache Deception — um ataque que explora discrepâncias entre como o servidor e o cache intermediário interpretam URLs. O fluxo:

  1. O atacante identifica um endpoint com informações sensíveis (ex: /account/profile)
  2. Ele encontra uma diferença no parse de URL entre o cache e o servidor de origem
  3. Cria uma URL maliciosa como /account/profile/logo.jpg e envia para a vítima
  4. O servidor interpreta como /account/profile e retorna os dados sensíveis. O cache vê a extensão .jpg e armazena a resposta como conteúdo estático (cache hit)
  5. O atacante acessa a mesma URL e recebe os dados da vítima diretamente do cache

A diferença entre um cache hit (resposta servida pelo cache) e um cache miss (resposta buscada no servidor de origem) é central aqui. O atacante força um cache miss na primeira requisição da vítima, que depois vira um cache hit para ele.

Data leaks e reconhecimento — antes de um ataque, existe a fase de reconhecimento (recon). Ferramentas como WhoisDomainTools e Netcraft permitem coletar IP, informações de domínio, tecnologias usadas, registros DNS e até arquivos/subdiretórios não listados. Essas informações, se expostas sem necessidade, facilitam ataques direcionados.

Cracking de WPA/WPA2 — redes Wi-Fi protegidas por WPA/WPA2 podem ter a confidencialidade comprometida. O recurso WPS, por exemplo, usa um PIN de apenas 8 dígitos que pode ser forçado por brute force. Outro vetor é a captura do handshake de 4 pacotes que ocorre quando um cliente se conecta, permitindo ataques offline de dicionário contra a senha.

Como proteger

  • Criptografia — dados em trânsito (TLS/HTTPS) e em repouso (AES-256) garantem que, mesmo interceptados, os dados sejam inúteis sem a chave
  • Controle de acesso — definir quem pode ler, escrever ou executar cada recurso (RBAC, ACLs)
  • HTTPS em todo lugar — nunca servir páginas autenticadas sobre HTTP plano
  • Headers de cache corretos — usar Cache-Control: no-store para respostas dinâmicas com dados sensíveis
  • Minimizar superfície de ataque — não expor informações desnecessárias (versão do servidor, stack traces, diretórios)

Integridade

Integridade garante que a informação não pode ser alterada ou corrompida por pessoas não autorizadas. Os dados precisam estar sempre corretos e confiáveis.

Exemplos de violação

SQL Injection — quando um atacante consegue injetar comandos SQL através de inputs não validados, ele pode alterar, deletar ou corromper dados no banco. Um simples '; DROP TABLE users; -- em um campo de login pode destruir dados críticos se a aplicação concatenar strings para montar queries.

Man-in-the-Middle (MITM) — um atacante posicionado entre o cliente e o servidor pode interceptar e modificar dados em trânsito. Sem TLS, um atacante em uma rede Wi-Fi pública pode alterar respostas HTTP, injetar scripts maliciosos ou modificar transações financeiras antes que cheguem ao destino.

Como proteger

  • Checksums e hashes — algoritmos como SHA-256 geram uma “impressão digital” dos dados para detectar qualquer alteração
  • Assinaturas digitais — combinam hashing com criptografia assimétrica para garantir autoria e integridade
  • Validação de input — nunca confiar em dados vindos do cliente; validar tipo, formato e limites no backend
  • Prepared statements — usar queries parametrizadas em vez de concatenação de strings para prevenir SQL injection
  • TLS/HTTPS — além de criptografar, o TLS garante que dados não sejam alterados em trânsito (integridade via MAC)

Disponibilidade

Disponibilidade significa que você consegue acessar a informação e os sistemas quando precisa. De nada adianta ter dados seguros e íntegros se o sistema está fora do ar.

Exemplos de violação

DDoS (Distributed Denial of Service) — um ataque que inunda o servidor com um volume massivo de requisições de múltiplas origens, esgotando recursos (CPU, memória, banda) e tornando o serviço inacessível para usuários legítimos.

Falhas de infraestrutura — um único ponto de falha (single point of failure) na arquitetura pode derrubar todo o sistema. Um banco de dados sem réplica, um servidor sem failover ou um provedor de cloud sem redundância multi-região são receitas para indisponibilidade.

Ransomware — malware que criptografa os dados do sistema e exige pagamento para liberar o acesso. Mesmo que os dados não sejam roubados (confidencialidade mantida) e não sejam alterados (integridade mantida), o sistema fica completamente indisponível.

Como proteger

  • Redundância — múltiplas instâncias do serviço em regiões diferentes, bancos de dados com réplicas
  • Backups — cópias regulares com testes periódicos de restauração (um backup que nunca foi testado não é um backup)
  • Rate limiting — limitar o número de requisições por IP/usuário para mitigar abuso e ataques DDoS
  • CDN e load balancing — distribuir carga e conteúdo geograficamente
  • Circuit breakers — isolar falhas em serviços dependentes para evitar cascata (veja o post sobre Circuit Breaker)
  • Monitoramento e alertas — detectar degradação antes que vire indisponibilidade total

Tabela resumo

PilarPergunta-chaveAmeaçasDefesas
ConfidencialidadeQuem pode ver?Web Cache Deception, data leaks, sniffing de rede, cracking de Wi-FiCriptografia, controle de acesso, HTTPS, headers de cache
IntegridadeOs dados estão corretos?SQL injection, MITM, corrupção de dadosChecksums, assinaturas digitais, validação de input, prepared statements
DisponibilidadeConsigo acessar?DDoS, falhas de infra, ransomwareRedundância, backups, rate limiting, circuit breakers, monitoramento

Conclusão

A Tríade CIA não é um conceito teórico que só interessa a equipes de segurança. Cada decisão técnica que um desenvolvedor toma — desde como armazenar uma senha até como configurar headers HTTP — impacta diretamente um ou mais desses pilares.

Os três pilares são complementares e interdependentes. Criptografia excessiva sem redundância pode comprometer a disponibilidade. Alta disponibilidade sem controle de acesso compromete a confidencialidade. O objetivo é encontrar o equilíbrio certo para o contexto da sua aplicação.


Referências