Este blog post faz parte da série Jornada Zero Trust, na qual apresentamos meios de implementar uma arquitetura Zero Trust de forma simplificada. Caso seja a sua primeira leitura, recomendamos que confira os passos iniciais. Já os requisitos para implementação do controle de acesso você confere neste post.
Anteriormente, elencamos os requisitos para implementar um controle de acesso conforme as exigências de uma arquitetura Zero Trust com base na ISO/IEC 27002. Agora, passaremos pelas etapas de gerenciamento e controle de acesso ao sistema e à aplicação, nas quais os requisitos são colocados em prática.
Gerenciamento de acesso do usuário
Prevenir acesso não autorizado a sistemas e serviços é fundamental para o bom funcionamento de uma arquitetura Zero Trust. Nesse sentido, a ISO/IEC 27002 estabelece um conjunto de melhores práticas que seguem o mesmo propósito e têm como principal atividade a formalização de processos.
Formalização de processos para controle de acesso
Vale reiterar aqui a importância dos registros e da formalização quando praticamos a filosofia Zero Trust, pois é da documentação dos processos que se extrai a visibilidade necessária para monitorar, analisar e aprimorar a segurança dos ativos e serviços de TI, e o mesmo vale para o controle de acesso a eles.
Portanto, o gerenciamento de acesso requer um processo formal de registro, desabilitação e remoção de IDs do usuário, que tem como objetivo estabelecer as seguintes regras:
- uso de um ID de usuário único: é uma forma de vincular cada usuário às suas responsabilidades e ações, de modo que qualquer outra permissão somente ocorra mediante aprovação e sua respectiva documentação;
- remoção, revogação ou desabilitação imediata de ID de usuários que deixaram a organização: como explicamos no primeiro post sobre controle de acesso, é preciso seguir os critérios de criticidade e sensibilidade dos ativos/recursos envolvidos e realizar análises críticas frequentemente, especialmente para usuários de sistemas como “sysadmin”, “root”, “administrator” e outros;
- remoção e identificação periódica ou desabilitação de usuários redundantes com ID: remover IDs repetidos, evitar colisão de IDs e garantir que eles não sejam emitidos para outros usuários é importante por vários motivos, entre eles assegurar o uso de IDs únicos. A emissão de IDs temporários é uma prática recomendada nesses casos, visto que as credenciais de longo prazo propiciam a redundância.
- token e IDs não podem ser sequenciais: ao definir um padrão para a geração de um token de sessão, caso a implementação entregar valores sequenciais, ele pode ser violado via engenharia reversa.
É importante ressaltar que as regras também se aplicam, dentro das possibilidades, às identidades de máquina. A ideia é que qualquer permissão a ser concedida ou revogada para todos os tipos de usuário passe por um processo próprio e formal, o qual deve ser documentado.
Outro ponto a se levar em consideração é o provisionamento para acesso de usuário, item que exploraremos mais profundamente a seguir.
Acesso de usuário provisionado
Provisionamento de usuários consiste na concessão/revogação de permissões a serviços e aplicações dentro do ambiente de trabalho. Na esfera Zero Trust, a formalização desse processo se faz necessária e tem de se enquadrar às exigências de controle e políticas de acesso.
Isso facilita a execução de um outro procedimento importante para o controle de acesso: a análise do nível de acesso concedido. Nela, a política de acesso — construída nas fases anteriores da jornada — é o parâmetro para determinar se a solicitação é consistente com os requisitos, e nenhum direito pode ser ativado sem a verificação completa.
Além disso, todos os procedimentos mencionados no tópico anterior se aplicam ao provisionamento, como documentação, remoção de direitos referentes a usuários que deixaram a organização, adaptações de direitos para usuários que mudaram de função e análises críticas frequentes com participação do proprietário dos ativos.
Observação: é recomendado que sejam atribuídas cláusulas contratuais às identidades humanas, incluindo parceiros e prestadores de serviços, que especifiquem sanções para casos de tentativas de acesso não autorizado.
Direitos de acesso privilegiados
Formalizar o controle e restrição na concessão e uso de direitos de acesso privilegiado é um processo crítico, cuja execução tem de ser rigorosamente alinhada com a política de controle de acesso, considerando os requisitos mínimos para execução da tarefa.
Fazendo uma analogia, os acessos privilegiados são como um tesouro guardado em um cofre, o qual somente dois elementos da organização podem acessar e trazer a quantidade exata para os seus objetivos: o guarda e o proprietário.
Eles atuam em conjunto nas etapas em que o usuário se identifica, tem suas responsabilidades analisadas criticamente e adquire a credencial temporária com nível suficiente para chegar à sala do cofre, checando, a cada passo, se os requisitos de controle de acesso foram atendidos.
Finalizada a verificação, os direitos são atribuídos e o usuário recebe um ID diferente daquele utilizado para suas atividades habituais. Então, o guarda abre o cofre para que o proprietário busque o valor solicitado e entregue ao usuário, que deverá consumi-lo em prazo determinado.
Voltando para o contexto de Zero Trust, enquanto o acesso privilegiado se encontra ativo, procedimentos específicos para evitar o uso não autorizado do ID concedido ao usuário devem ser executados e mantidos, preferencialmente com uso de soluções que permitam a criação de regras de forma granular.
Também é altamente recomendado que os direitos concedidos tenham uma expiração definida e revogada ao fim da atividade, pois um acesso mal-intencionado, como de ransomware ou malware, só terá sucesso se obtiver permissão para executar determinadas ações.
Controle de acesso ao sistema e à aplicação
Entre as orientações existentes na ISO/IEC 27002 voltadas ao controle de acesso ao sistema e à aplicação, temos dois tipos de controle importantes para uma arquitetura Zero Trust preparada para o futuro, sendo eles aplicados ao uso de programas capazes de sobrepor os controles de sistemas e aplicações e ao código-fonte de programas.
A política de acesso deve garantir a proteção dos usuários e suas informações de autenticação, além de descrever os requisitos mínimos necessários para conceder o acesso a ativos e demais sistemas. Assim, riscos de ameaça interna são minimizados e, ao mesmo tempo, usuários, desenvolvedores e demais envolvidos são educados quanto às melhores práticas de segurança para credenciais de acesso.
Devido à sensibilidade desses componentes, é fundamental que o acesso a eles seja estritamente controlado por meio de procedimentos de identificação, autenticação e autorização, segregação de programas utilitários do software de aplicação, registro do uso desses programas, entre outros.
Para receber os próximos conteúdos da nossa série sobre Zero Trust em primeira mão, inscreva-se na nossa newsletter preenchendo os campos a seguir!