Da perspectiva mais ampla, os princípios de confiança zero podem ser aplicados a todo o ciclo de vida de desenvolvimento de aplicativos, incluindo o design do sistema, as plataformas de hardware utilizadas e os procedimentos de aquisição.2 Entretanto, este artigo discute os aspectos operacionais da implementação de confiança zero para defender aplicativos e dados em tempo de execução.
Em termos gerais, a segurança Zero Trust usa tecnologias para atingir uma das três metas distintas:
O gráfico a seguir demonstra esse modelo transacional de segurança Zero Trust geral, com as seções seguintes se aprofundando em cada classe de tecnologias.
As duas primeiras tecnologias — autenticação e controle de acesso — estão intimamente relacionadas e são diretamente motivadas pelos princípios de “verificação explícita” e “privilégio mínimo”, uma vez que essas tecnologias estão no cerne da aplicação de “ Quem pode fazer o quê ”. Implementações mais sofisticadas de autenticação observam o comportamento contínuo de um ator, capturando a mentalidade de “avaliar continuamente”.
As tecnologias de autenticação visam criar confiança em uma identidade atestada: Quem está atuando em uma transação. O processo de autenticação tem três componentes:
A forma mais básica de atestado é frequentemente chamada de “usuário” — um ser humano, ou agente agindo em nome de um ser humano, que deseja realizar uma transação. Entretanto, no caso de confiança zero usada em um aplicativo, um ator pode ser uma carga de trabalho (como um processo, serviço ou contêiner), então o conceito generalizado de identidade deve incluir tais atores. Em outros casos, a noção de Quem inclui não apenas o humano ou a carga de trabalho, mas considerações ou dimensões adicionais de identidade. Dessa perspectiva, dimensões adicionais de identidade podem incluir o dispositivo ou plataforma do usuário/carga de trabalho, ou o ecossistema usado para a interação ou a localização do agente. Por exemplo, um usuário “Alice” pode estar em um PC marcado como “ABC- 0001” usando uma instância específica de navegador com impressão digital, originada do endereço IPv4 10.11.12.13.
Alguns sistemas permitem que usuários não autenticados, às vezes chamados de “convidados” ou usuários “anônimos”, realizem um conjunto limitado de transações. Para tais sistemas, as etapas adicionais de comprovação de identidade e o sistema que emite um veredito não são relevantes. Entretanto, para qualquer identidade atestada específica, os seguintes métodos são comumente usados para dar suporte a essa atestação:
Muitas vezes, quando é necessário um alto grau de confiança, vários métodos são usados. Isso é evidenciado no modelo do Google BeyondCorp,3 que exige autenticação multifator (MFA) antes de permitir transações de maior valor. As soluções de autenticação mais sofisticadas associam uma “confiança” a cada identidade e especificam um nível mínimo de confiança para cada tipo de transação, com base no valor e no risco da transação.
Por fim, observe que alguns desses métodos não são ações estáticas e pontuais, mas podem e devem ser contínuos, de acordo com o princípio de “avaliação contínua”. Nesses casos, a pontuação de confiança atribuída à comprovação de identidade pode aumentar ou diminuir ao longo do tempo. Por exemplo, a impressão digital do navegador ou o endereço IP podem mudar dentro de uma única sessão do usuário, o que pode ser visto como suspeito, reduzindo a confiança; ou, à medida que mais dados são coletados sobre o comportamento do ator em uma sessão, a pontuação de confiança pode aumentar ou diminuir dependendo de como o comportamento atual se compara a observações anteriores.
A autenticação dinâmica pode funcionar em conjunto com o controle de acesso em sistemas mais avançados. Como primeiro nível dessa interação, a política de controle de acesso pode especificar uma pontuação de confiança mínima para diferentes classes de transações, conforme mencionado anteriormente. O próximo nível de interação permite que o subsistema de controle de acesso forneça feedback ao subsistema de autenticação, normalmente solicitando autenticação adicional para aumentar a pontuação de confiança para o limite mínimo.
Após utilizar técnicas de autenticação para verificar quem está atuando em uma transação, as próximas perguntas são: O que esse ator tem permissão para fazer? E para quem ? Este é o escopo das tecnologias de controle de acesso.
Para fazer uma analogia de segurança física, imagine que você queira visitar uma base militar. Depois que os guardas determinam com segurança se você é um civil, político ou soldado, eles usam essa determinação para decidir em quais prédios você pode entrar e se você pode levar uma câmera para cada prédio em que tiver permissão para entrar. A política que rege essas escolhas pode ser muito grosseira e se aplicar a todos os edifícios (por exemplo, “políticos podem entrar em qualquer edifício”) ou pode ser mais refinada (como “políticos só podem entrar nos edifícios <A> e <B>, mas só podem levar câmeras para <A>”).
Aplicadas ao contexto da segurança cibernética, as técnicas de controle de acesso devem incorporar o princípio de confiança zero de “privilégio mínimo”. Em outras palavras, a política de controle de acesso ideal permitiria apenas aqueles privilégios que o ator requer e não permitiria todos os outros privilégios. Além disso, uma política robusta ideal seria condicional a um nível mínimo específico de confiança na autenticidade da identidade do ator, com o limite de confiança especificado na granularidade de cada privilégio permitido.
Portanto, o valor de uma solução de controle de acesso pode ser avaliado pelo quão próximo ela está desses ideais. Especificamente, uma solução de segurança de confiança zero deve incluir controle de acesso e deve avaliar a tecnologia de controle de acesso ao longo das dimensões descritas abaixo e posteriormente.
Observando o princípio de “avaliar (e reavaliar) continuamente”, qualquer crença na autenticidade do ator deve se ajustar ao longo do tempo. Em uma solução simples, pode ser apenas um tempo limite; em sistemas mais sofisticados, a confiança pode variar com base nas observações do comportamento do ator ao longo do tempo.
Se a autenticação e o controle de acesso forem implementações de mentalidade “sempre verificar” e “menor privilégio”, então, a visibilidade e a análise contextual são fundamentais para os princípios de “avaliar continuamente” e “presumir uma violação”.
A visibilidade é o precursor necessário para a análise: um sistema não pode mitigar o que não pode ver. Portanto, a eficácia da solução de segurança de confiança zero será diretamente proporcional à profundidade e amplitude da telemetria que pode ser coletada das operações do sistema e do contexto externo. No entanto, uma infraestrutura de visibilidade moderna será capaz de fornecer muito mais dados, metadados e contexto potencialmente úteis do que qualquer ser humano razoável e sem assistência seria capaz de lidar em tempo hábil. Como resultado do desejo por mais dados e da capacidade de destilar esses dados em insights mais rapidamente, um requisito fundamental é a assistência de máquinas para os operadores humanos.
Essa assistência normalmente é implementada usando algoritmos automatizados que abrangem desde análises baseadas em regras até métodos estatísticos e algoritmos avançados de aprendizado de máquina. Esses algoritmos são responsáveis por traduzir a mangueira de dados brutos em consciência situacional consumível e operacionalizada que pode ser usada por operadores humanos para avaliar e, se necessário, remediar. Por esse motivo, a análise assistida por ML anda de mãos dadas com a visibilidade.
O pipeline generalizado de dados brutos (visibilidade) até a ação (remediação) é exibido a seguir:
Visibilidade é a implementação — o “como” — do princípio de “avaliação contínua” de confiança zero. Inclui manter um inventário de entradas de dados disponíveis (Catálogo) e telemetria em tempo real, além de retenção de dados históricos (Coletar).
A maturidade da visibilidade de uma abordagem Zero Trust deve considerar quatro fatores:
A latência fornece um limite inferior para a rapidez com que uma ameaça potencial pode ser respondida. A latência de uma solução de confiança zero deve ser medida em segundos ou menos; caso contrário, é bem provável que qualquer análise — não importa quão precisa seja — seja tarde demais para evitar o impacto da exploração, como exfiltração/criptografia de dados ou indisponibilidade devido ao esgotamento de recursos. Sistemas mais sofisticados podem permitir mitigações síncronas e assíncronas. A mitigação síncrona inibiria a conclusão da transação até que a visibilidade e a análise completas fossem concluídas. Como a mitigação síncrona provavelmente adicionará latência à transação, esse modo de operação seria reservado para transações particularmente anômalas ou arriscadas, permitindo que todas as outras transações enviem telemetria e sejam analisadas de forma assíncrona.
Essa preocupação é relevante se os dados chegam de várias fontes ou tipos de sensores de dados, o que é um cenário comum. Este fator normalmente se divide em duas subpreocupações.
Um valor essencial derivado de uma solução de visibilidade de alta qualidade é a capacidade de descobrir atividades suspeitas como um indicador de possível violação. Para fazer isso de forma eficaz, a solução deve receber telemetria em todas as “camadas” relevantes de entrega do aplicativo: o aplicativo em si, é claro, mas também a infraestrutura do aplicativo, a infraestrutura de rede, quaisquer serviços aplicados ou usados pelo aplicativo e até mesmo os eventos no dispositivo cliente. Por exemplo, identificar um usuário acessando um dispositivo novo, nunca visto antes, pode ser um pouco suspeito por si só; mas quando combinado com informações de rede (como mapeamento GeoIP de um país estrangeiro), o nível de suspeita aumenta ainda mais. Esse nível de suspeita se manifesta como uma pontuação de confiança mais baixa na identidade do usuário. No contexto de uma política de segurança de confiança zero, quando esse ator tenta uma transação de alto valor (como transferência de fundos para uma conta estrangeira), a solução de controle de acesso pode optar por bloquear a transação, com base na baixa confiança.
Em relação à mentalidade Zero Trust, quanto mais profunda e completa for a solução de visibilidade, mais eficiente o sistema pode ser na limitação apropriada de transações e na detecção de violações
Por fim, qualquer coleta de dados deve estar em conformidade com os requisitos legais e de licenciamento relacionados à segurança, retenção e uso de dados. Portanto, uma solução de visibilidade robusta deve atender a cada uma dessas necessidades. Entender as restrições no uso de dados implícitas na governança deve ser considerado em uma solução de visibilidade de confiança zero. Por exemplo, se um IP for considerado Informação Pessoalmente Identificável (PII), então o uso e a retenção de longo prazo de endereços IP para análise devem atender ao uso permitido dos endereços IP.
Além da visibilidade, o outro maquinário necessário para implementar a “avaliação contínua” são as ferramentas analíticas necessárias para realizar uma avaliação significativa; ou seja, ter uma avaliação que possa ser operacionalizada por uma solução de Zero Trust.
Uma consideração para análise é o escopo e a amplitude dos dados de entrada. As entradas para os algoritmos de análise podem ser limitadas a um único fluxo de dados de uma única fonte ou podem olhar através de múltiplos fluxos, incluindo de várias fontes de dados e todas as camadas da infraestrutura e aplicação.
Um segundo aspecto particularmente relevante da análise na estrutura de confiança zero é lidar com o volume e a taxa de dados ingeridos, que excederão a capacidade de qualquer ser humano de digerir. Portanto, é necessário algum tipo de assistência mecânica para formar insights digeríveis por humanos. Mais uma vez, a sofisticação da assistência pode ser descrita como uma progressão.
Assim como na abordagem baseada em regras, a assistência de ML pode ser apenas para detecção ou pode ser vinculada à correção automática. Além disso, a assistência de ML pode ser usada em conjunto com um sistema baseado em regras, onde o “veredito” de ML (ou opinião ou confiança) pode ser usado como uma entrada em uma regra, como “executar ação <X> se <avaliador de ML [bot_detector_A] relatar bot com confiança maior que 90%>.”
O princípio final da mentalidade de ferrugem zero é “assumir a violação”. Para ser claro e fornecer perspectiva, métodos de autenticação e controle de acesso implementados corretamente são eficazes na prevenção da grande maioria das transações maliciosas. No entanto, deve-se, por excesso de paranoia, supor que os mecanismos de execução de autenticação e controle de acesso serão derrotados por algum adversário suficientemente motivado ou sortudo. A detecção de violações, necessária para responder a essas fugas em tempo hábil, requer visibilidade e análise assistida por máquina. Portanto, é porque os outros mecanismos de execução serão derrotados ocasionalmente que as tecnologias de visibilidade que alimentam a análise contextual assistida por ML são uma necessidade crítica para alimentar a solução de segurança de confiança zero de remediação baseada em risco.
Para os casos de “falso negativo” em que uma transação maliciosa real derrotou a autenticação e o controle de acesso, o mecanismo de correção automatizada baseada em risco deve ser usado como um recurso. Mas como essa tecnologia é aplicada como um obstáculo contra transações que passaram nas verificações de execução anteriores, há uma preocupação maior em sinalizar incorretamente o que era, na verdade, um “verdadeiro negativo” (uma transação válida e desejável) como um “falso positivo” (sinalizado incorretamente como uma transação maliciosa). Para atenuar essa preocupação, quaisquer ações de correção desencadeadas pela crença em possível malícia, que de alguma forma não foi detectada pela autenticação ou controle de acesso, devem ser baseadas nos três fatores a seguir:4
A segurança de confiança zero é uma abordagem mais moderna de abordagens anteriores de segurança, como defesa em profundidade, estendendo a técnica anterior ao adotar uma visão centrada em transações sobre segurança: quem está tentando fazer o quê a quem . Essa abordagem permite proteger não apenas o acesso externo a um aplicativo, mas também é aplicável à proteção dos componentes internos do aplicativo.5 Dada essa visão transacional fundamental, a segurança de confiança zero está enraizada em um conjunto de princípios fundamentais que são usados para defender aplicativos no ambiente mais complexo e desafiador de hoje, com os princípios então mapeados para um conjunto de soluções de nível de subsistema, ou métodos, que incorporam esses princípios. Os princípios básicos e como eles se relacionam com métodos de solução estão resumidos abaixo.
Estas ferramentas — os métodos de autenticação, o controle de acesso, a visibilidade, a análise contextual e a remediação de consciência de riscos — são necessárias e suficientes para evitar uma grande variedade de tipos de ataque.
1 https://www.f5.com/services/resources/white-papers/why-zero-trust-matters-for-more-than-just-access
2A confiança zero pode, e deve, ser aplicada até mesmo “à esquerda” do pipeline de CI/CD. Ferramentas como ferramentas de avaliação de vulnerabilidade, análise estática, bancos de dados CVE, bancos de dados de reputação de código aberto e sistemas de monitoramento de integridade da cadeia de suprimentos são consistentes com a mentalidade de confiança zero.
3https://cloud.google.com/beyondcorp-enterprise/docs/quickstart
4Observe que a linha entre o controle de acesso contextual e consciente de riscos e o tópico geral de correção consciente de riscos é confusa e existe alguma sobreposição.
5Frequentemente chamada de proteção intra-aplicativo “Leste-Oeste”, em oposição à proteção “Norte-Sul” para o aplicativo.