Checklist de Segurança Web: Guia de Segurança Abrangente
A checklist de segurança web cobre as medidas necessárias para proteger seu site de ameaças de segurança comuns. Este guia cobre OWASP Top 10, headers de segurança e melhores práticas.
Atualizado em:OWASP Top 10
1. Broken Access Control: Controles de autorização faltando. Os usuários podem acessar recursos para os quais não estão autorizados.
2. Cryptographic Failures: Dados sensíveis não criptografados ou criptografia fraca usada.
3. Injection: Injeção SQL, NoSQL, OS, LDAP. Quando a entrada do usuário é adicionada diretamente à consulta.
4. Insecure Design: Design com vulnerabilidades de segurança. Nenhum threat modeling feito.
5. Security Misconfiguration: Configuração padrão, modo debug aberto, headers de segurança faltando.
6. Vulnerable Components: Bibliotecas de terceiros com vulnerabilidades de segurança. Dependências desatualizadas.
7. Authentication Failures: Política de senha fraca, erros de gestão de sessão, sem proteção contra brute force.
8. Software and Data Integrity Failures: Segurança do pipeline CI/CD, integridade de dependências, deserialização insegura.
9. Security Logging Failures: Logging insuficiente, sem monitoramento, sem plano de resposta a incidentes.
10. SSRF (Server-Side Request Forgery): O servidor faz uma solicitação para uma URL controlada pelo atacante.
Headers de Segurança
CSP acrescenta proteção; unsafe-inline pode enfraquecê-la. Use nonces ou hashes para scripts necessários.
Strict-Transport-Security (HSTS): Diz ao navegador para se conectar apenas via HTTPS. max-age=31536000; includeSubDomains; preload.
X-Content-Type-Options: O valor nosniff desabilita o MIME type sniffing.
X-Frame-Options: DENY ou SAMEORIGIN. Previne que a página seja exibida em iframe (clickjacking).
Referrer-Policy: strict-origin-when-cross-origin. Controla as informações do referrer.
Permissions-Policy: Controla as funcionalidades do navegador como câmera, microfone, geolocalização.
Autenticação e Autorização
Política de senha: Mínimo 8 caracteres, maiúsculas/minúsculas, número, caractere especial. Hash de senha (bcrypt, Argon2).
Autenticação multifator (MFA): 2FA ou MFA obrigatório. TOTP (Google Authenticator), SMS, hardware key (YubiKey).
Gestão de sessão: Cookies Secure, HttpOnly, SameSite. Timeout de sessão, limite de sessões concorrentes.
JWT: Token de acesso de curta duração (15 min) + token de refresh de longa duração (7 dias). Rotação de token.
OAuth 2.0 / OpenID Connect: Autenticação de terceiros. Login com Google, GitHub, Apple.
RBAC: Role-Based Access Control. Roles de usuário e permissões. Princípio do menor privilégio.
Validação e Sanitização de Entrada
Validação do lado do servidor: Valide todas as entradas no servidor. A validação do lado do cliente não é suficiente.
Prevenção de SQL injection: Use consultas parametrizadas / prepared statements. Os ORMs (Prisma, SQLAlchemy) fornecem proteção automática.
Prevenção de XSS: Codificação de saída. Escapamento automático do React/Vue. textContent em vez de innerHTML.
Prevenção de CSRF: Tokens CSRF. Atributo de cookie SameSite. Padrão de cookie de duplo envio.
Segurança de upload de arquivo: Controle de tipo e tamanho de arquivo. Não dê permissão de execução no diretório de upload. Escaneamento de vírus.
Monitoramento e Resposta de Segurança
Logging: Registre todos os eventos de autenticação, autorização e erro. Logging centralizado (ELK, Loki).
Monitoramento: Detecção de anomalias. Tentativas de login falhadas, padrões de tráfego incomuns, picos de taxa de erro.
Plano de resposta a incidentes: Planeje como responder a incidentes de segurança. Runbooks, caminhos de escalonamento.
Escaneamento de vulnerabilidades: Escaneamento de segurança regular. OWASP ZAP, Burp Suite, Snyk.
Testes de penetração: Teste de penetração profissional pelo menos uma vez por ano. Relatório de achados e plano de correção.
Checklist de Segurança
✓ HTTPS ativo em todas as páginas
✓ Headers de segurança (CSP, HSTS, X-Content-Type-Options, X-Frame-Options) configurados
✓ Validação de entrada aplicada em todos os endpoints
✓ Proteção contra SQL injection (consultas parametrizadas)
✓ Proteção contra XSS (codificação de saída, CSP)
✓ Proteção contra CSRF (tokens, cookies SameSite)
✓ Autenticação (MFA, política de senha forte)
✓ Autorização (RBAC, menor privilégio)
✓ Segurança de dependências (npm audit, Snyk)
✓ Logging e monitoramento ativos
✓ Plano de backup e recuperação de desastres
✓ Plano de resposta a incidentes
Ferramentas relacionadas
Guias passo a passo
Artigos práticos sobre este tema
Guia de PWA (Progressive Web Apps): Fazendo Apps Web Funcionarem como Apps Móveis
PWA (Progressive Web Apps) transforma sites em apps que funcionam como apps móveis, podem ser usados offline e adicionados à tela…
Guia de Email Marketing: Campanhas, Automação e Entregabilidade
Email marketing é um dos canais de marketing digital com maior ROI (retorno sobre investimento).
Segurança de senhas: guia para criar senhas seguras
Senhas fracas são a causa mais comum de invasão de contas.