Nas últimas semanas falamos sobre um tema constantemente abordado nas discussões sobre cibersegurança, o Zero Trust. Ao nos aprofundarmos no tema, percebemos que entre os três pilares que regem o conceito, temos 1 propriedade em comum, as Identidades. Todos os controles implementados avaliam de alguma maneira a identidade do consumidor, sendo ele uma aplicação ou um usuário. Hoje vamos falar sobre como as identidades se aplicam dentro do conceito e quais controles podemos aplicar utilizando o Microsoft Entra ID.
Importância do Zero Trust
A guinada das empresas para a nuvem pública levantou uma série de preocupações para os times de segurança.
Com menos controle sobre o ambiente, como será possível garantir a segurança em todas as etapas do processo?
Esse questionamento é gerado pela experiência dos administradores em manter ambientes próprios, onde o controle de acesso à infraestrutura era de completa responsabilidade da empresa, devendo garantir a proteção do acesso físico e também dos acessos lógicos.
Essa perspectiva foi alterada com a chegada da nuvem pública e seu modelo de responsabilidade compartilhada. Agora, os administradores e times de segurança só precisam se preocupar com o acesso lógico aos seus ambientes e soluções. Essa "redução" de responsabilidade pode representar uma maior facilidade na manutenção dos ambientes, porém para os usuários de ambientes em nuvem mais experientes, essa afirmação é completamente enganosa.
Com isso estabelecido, podemos tratar do "novo" modelo de segurança recomendado para os ambientes em nuvem pública, saindo do modelo de 3 camaddas e chegando com o modelo Zero Trust.
Identidade nos 3 pilares
Centralizando nossa estratégia de segurança nas identidades, chegou a hora de avaliarmos o comportamento de cada um dos princípios e também a aplicação de alguns controles que nos permitirão ter sucesso em nossa implementação.
Minimum Privilege
Toda e qualquer operação dentro do nosso ambiente será executado por uma identidade, que terá o permissionamento necessário para executar tal ação. Independente do tipo de identidade utilizada (humana para ações executadas por usuários e sistêmica para atividades comandadas por aplicações), sempre teremos uma conta por trás da ação, permitindo primeiramente a autenticação e posteriormente a autorização da credencial.
Pensando na execução da estratégia e implementação do pilar, temos o RBAC (Role Based Access Control) como principal "aliado". Ao utilizarmos o mecanismo de RBAC do nosso Cloud Provider é possível granularizar o acesso aos recursos da plataforma, sejam eles feitos por usuários humanos ou contas de sistema.
Atribuindo acesso apenas ao escopo necessário e com as permissões controladas para que a identidade possa realizar as ações requeridas, nós reduzimos a capacidade de danos que podem ser feitos ao nosso ambiente, caso aquela credencial seja comprometida ou o usuário por trás dela tenha más intenções.
O simples desenho acima mostra a aplicação das roles em diversos tipos de identidades (e trambém grupos) e seu uso para acessar os recursos da plataforma. Temos também o uso do PIM, feito para acessos privilegiados dentro do Azure e do Entra.
Verify Explicitly
O nosso segundo pilar exige a validação de todas as requisições feitas para a plataforma, independente de quem esteja fazendo.
Para requisições feitas para as APIs do cloud provider esse conceito é aplicado por padrão. Todas as chamadas exigem que as credenciais do usuário que está acessando o recurso, sejam validadas. Quando utilizamos identidades sistêmicas (tanto service principalls quanto managed identities), as validações são as mesmas, sendo feitas pelo Entra a cada chamada.
O desenho abaixo mostra de maneira simplificada e sem detalhes de implementação, como as requisições são feitas e autorizadas pelo IdP:
As chamadas à plataforma são feitas utilizando um access_token, gerado pelo Microsoft Entra ID e vaildado a cada passo da jornada.
Assume Breach
O último dos pilares determina que devemos tratar todo o nosso ambiente como "hostil", assumindo que todos os acessos são inseguros.
A aplicação desse princípio permite assegurar que a identidade que está realizando o acesso é de fato uma identidade válida e poderá ter sua requisição permitida após todas as validações necessárias.
Dentro da plataforma, outros controles devem ser aplicados para satisfazer esse pilar, porém com as nossas identidades, deveremos validar diferentes pontos de informação para garantir que aquela conta não está sendo utilizada indevidamente.
O uso de algumas dessas funcionalidades requer a adesão de recursos extras, como licenças do Entra e também o Microsoft Intune, para gestão dos dispositivos.
Garantindo os controles com o Microsoft Entra ID
Na seção anterior falamos sobre os pilares que compõem o Zero Trust e como as identidades podem se tornar o centro de cada um deles. Utilizando o Microsoft Entra ID, podemos implementar controles robustos, que permitirão proteger o acesso aos nosso recursos.
Azure RBAC e Entra RBAC: utilizados para permissionar o acesso aos recursos, o acesso baseado em funções do Azure e do Entra nos permite aplicar o minimum privilege, oferecendo diferentes escopos de acesso e níveis de privilégio;
Certificados, Credenciais e Passwordless: para o verify explicitly podemos configurar para a identidade diferentes tipos de autenticação. Para identidades de aplicação, temos disponíveis apenas as credenciais e certificados, porém para contas humandas, podemos configurar todas as opções existentes;
Conditional Access: recurso utilizado em todos os pilares, as políticas de acesso condicional nos permitem avaliar uma série de informações sobre um acesso feito por uma identidade. É com essas políticas que nós poderemos validar a origem da chamada feita pela identidade, o dispositivo que está sendo utilizado, o risco da atividade, entre outras informações.
Esses controles somados às soluções existentes do Azure (como as Azure Policies) garantirão a excelência da postura de segurança da sua organização, bem como a boa operação das jornadas de negócio!
Identidade é um tema quente nas comunidades de cibersegurança, por isso é importante que você e sua organização estejam preparados para aplicar os controles mais modernos com o intuito de proteger seu ambiente da melhor maneira possível.
Espero que de alguma forma eu tenha conseguido contribuir com a melhora na segurança do seu ambiente e que tenha gostado do texto.
Até logo!