Segurança de Zero Trust
LidoEsta aula explora o modelo de segurança Zero Trust, seus princípios fundamentais e como implementá-lo na prática. Abordamos os pilares de identidade, política, dispositivos e verificação contínua, com exemplos e exercícios para consolidar o aprendizado.
O modelo de segurança Zero Trust (Confiança Zero) representa uma mudança fundamental na forma como protegemos redes e sistemas. Em vez de confiar em tudo que está dentro do perímetro da rede, o Zero Trust adota o princípio de "nunca confie, sempre verifique". Isso significa que cada solicitação de acesso, independentemente de sua origem, deve ser autenticada, autorizada e criptografada antes de ser permitida.
Este paradigma surgiu como resposta às limitações dos modelos tradicionais baseados em perímetro, que se mostraram ineficazes contra ameaças internas e ataques avançados que exploram a confiança implícita. Nesta aula, vamos explorar os componentes essenciais do Zero Trust, fornecendo uma base sólida para implementação em ambientes reais.
Identity
A identidade é o novo perímetro no modelo Zero Trust. Cada usuário, dispositivo ou serviço deve ter uma identidade única e verificável. A gestão de identidades envolve a criação, manutenção e revogação de identidades digitais, bem como a autenticação e autorização associadas.
No Zero Trust, a autenticação deve ser forte e multifatorial. Isso significa que, além da senha, exigimos outros fatores, como um código gerado por aplicativo ou uma biometria. A autorização deve ser baseada em políticas dinâmicas que consideram o contexto da solicitação, como localização, horário e comportamento.
Um componente crítico é o gerenciamento de identidades e acessos (IAM). Ferramentas como Okta, Azure AD e Keycloak permitem centralizar a gestão de identidades e aplicar políticas de acesso consistentes. Além disso, o conceito de identidade de carga de trabalho (workload identity) é essencial para ambientes de nuvem e contêineres, onde serviços precisam autenticar entre si.
Exemplo de política de acesso baseado em risco:
- Se o usuário está acessando de um novo dispositivo e de um país diferente, exija autenticação multifatorial adicional.
- Se o usuário é um administrador, exija um dispositivo gerenciado e uma sessão com privilégios mínimos.
- Se o usuário tenta acessar dados sensíveis fora do horário comercial, bloqueie o acesso e alerte a equipe de segurança.Policy
Políticas no Zero Trust definem as regras de acesso e são aplicadas de forma consistente em toda a infraestrutura. Essas políticas devem ser granulares, baseadas em atributos (ABAC) e capazes de se adaptar dinamicamente ao contexto.
As políticas são o coração do controle de acesso. Elas especificam quem pode acessar o quê, em quais condições. No Zero Trust, as políticas devem ser aplicadas em todos os pontos de decisão, como gateways de acesso, firewalls e APIs. A política deve ser centralizada e distribuída para garantir consistência.
Ferramentas como Open Policy Agent (OPA) e AWS Identity and Access Management (IAM) são exemplos de mecanismos que permitem definir e executar políticas de forma declarativa. As políticas devem ser revisadas e atualizadas regularmente para acompanhar mudanças no ambiente e nos requisitos de segurança.
Exemplo de política em OPA (Rego):
package authz
allow {
input.method == "GET"
input.path[0] == "public"
}
allow {
input.user.role == "admin"
input.token.valid == true
}Devices
No Zero Trust, os dispositivos são tratados como não confiáveis até que sejam verificados. Cada dispositivo que tenta acessar recursos deve estar em conformidade com políticas de segurança, como ter antivírus atualizado, sistema operacional corrigido e criptografia habilitada.
A gestão de dispositivos envolve inventariar todos os dispositivos, monitorar seu estado de segurança e aplicar controles de acesso baseados nesse estado. Soluções de gerenciamento unificado de endpoints (UEM) e detecção e resposta de endpoints (EDR) são fundamentais para coletar telemetria e aplicar políticas.
Dispositivos não gerenciados, como BYOD (traga seu próprio dispositivo), devem ter acesso limitado ou exigir a instalação de um certificado ou agente. O uso de certificados de dispositivo e autenticação mútua TLS (mTLS) ajuda a garantir que apenas dispositivos conhecidos e autorizados possam se comunicar.
Exemplo de verificação de conformidade de dispositivo:
- O dispositivo deve ter o sistema operacional atualizado (patch de segurança >= 2023-01).
- O dispositivo deve ter um antivírus ativo e com definições recentes.
- O dispositivo deve ter criptografia de disco completo habilitada.
- O dispositivo deve ter um certificado de dispositivo válido emitido pela autoridade de certificação da empresa.Continuous verification
A verificação contínua é o que diferencia o Zero Trust de abordagens estáticas. Em vez de verificar apenas no momento do login, o acesso é reavaliado continuamente, levando em consideração o comportamento do usuário, o estado do dispositivo e outros sinais de risco.
Isso é alcançado por meio de monitoramento contínuo e análise de comportamento. Ferramentas de segurança que usam inteligência artificial e aprendizado de máquina podem detectar anomalias e responder em tempo real, revogando acessos ou exigindo autenticação adicional.
A verificação contínua também está ligada ao princípio do menor privilégio: os usuários só têm acesso aos recursos necessários para sua função, e esse acesso pode ser temporário ou dinâmico. A implementação de microssegmentação e controle de acesso por sessão permite limitar a superfície de ataque e reduzir o impacto de uma possível violação.
Exemplo de resposta a uma anomalia detectada:
1. Usuário baixa uma grande quantidade de dados de um repositório interno.
2. Sistema de verificação contínua detecta o padrão anômalo.
3. O sistema revoga o acesso ao repositório em tempo real.
4. Uma notificação é enviada ao usuário e ao time de segurança.
5. O usuário deve reautenticar com MFA para restabelecer o acesso.Boas práticas e observações finais
A implementação do Zero Trust não é um projeto único, mas uma jornada contínua. Algumas boas práticas incluem: começar com um piloto em uma área crítica, envolver todas as partes interessadas (TI, segurança, negócios), automatizar processos sempre que possível e monitorar constantemente a eficácia das políticas.
É importante lembrar que Zero Trust não é uma tecnologia específica, mas uma estratégia que combina várias tecnologias e processos. A adoção deve ser gradual, com foco em reduzir riscos e melhorar a experiência do usuário. A colaboração entre equipes de segurança e desenvolvimento é essencial para integrar segurança no ciclo de vida dos sistemas.
Exercícios
Explique o princípio fundamental do modelo Zero Trust e como ele difere do modelo tradicional baseado em perímetro.
✓ Resposta: O princípio fundamental é "nunca confie, sempre verifique". Diferente do modelo tradicional, que confia em tudo dentro da rede, o Zero Trust exige verificação contínua de cada solicitação, independentemente da origem.Descreva dois fatores de autenticação que podem ser usados em um sistema Zero Trust e explique por que eles são importantes.
✓ Resposta: Exemplos: senha e código via aplicativo autenticador (TOTP), ou senha e biometria (impressão digital). Eles são importantes porque adicionam camadas de segurança, dificultando o acesso não autorizado mesmo se uma credencial for comprometida.Qual é o papel das políticas baseadas em atributos (ABAC) no Zero Trust? Dê um exemplo de atributo que poderia ser usado.
✓ Resposta: ABAC permite decisões de acesso baseadas em atributos do usuário, recurso, ambiente e ação. Exemplo: permitir acesso a um arquivo somente se o usuário tiver cargo 'gerente' e o arquivo estiver no departamento 'vendas'.Como a verificação contínua pode detectar uma conta comprometida? Cite uma técnica usada.
✓ Resposta: Através da análise de comportamento do usuário (UBA), que monitora padrões como horários de acesso, locais e volumes de dados. Se um usuário que normalmente acessa das 9h às 18h começa a acessar à meia-noite de outro país, o sistema pode revogar o acesso e exigir autenticação adicional.Considere um cenário onde um funcionário tenta acessar um sistema de folha de pagamento de um dispositivo não gerenciado. Quais políticas Zero Trust deveriam ser aplicadas?
✓ Resposta: Deveria ser negado o acesso ou exigir que o dispositivo seja gerenciado, com certificado válido e conformidade com políticas de segurança, além de autenticação multifatorial e, possivelmente, uma avaliação de risco adicional.