Nota do editor:esta é uma das postagens que fazem parte de uma série sobre os recursos únicos encontrados no Google Kubernetes Engine (GKE) Advanced.
Há um ditado entre especialistas em segurança: contêineres não contêm. Os pesquisadores da área de segurança
identificaram vulnerabilidades que permitem que um invasor corrompa um contêiner e tenha acesso ao sistema operacional do host compartilhado (SO), também conhecido como "escape de contêiner". Para aplicativos que usam código não confiável, o escape de contêiner é uma parte importante do perfil de ameaça.
No Google Cloud Next 2019, anunciamos o
GKE Sandbox na versão Beta, um novo recurso no
Google Kubernetes Engine (GKE) que garante mais segurança e isolamento para seus contêineres adicionando uma camada extra entre eles e o sistema operacional do host. Com o acesso para o público em geral, o GKE Sandbox será disponibilizado como parte do próximo GKE Advanced, que oferece recursos aprimorados para ajudar você a criar aplicativos de produção exigentes, além do nosso serviço gerenciado do Kubernetes.
Veja um exemplo do que aconteceria com um escape de contêiner. Digamos que você tenha um aplicativo de software como serviço (SaaS) que execute cargas de trabalho de aprendizado de máquina (ML) para usuários. Imagine que um invasor faça upload de um código malicioso que gera um escalonamento de privilégios para o sistema operacional do host. A partir desse sistema operacional, o invasor acessa o modelo e os dados das outras cargas de trabalho do ML, quando o modelo e os dados não são dele.
O GKE Sandbox é baseado no
gVisor, o tempo de execução do sandbox de contêiner de código aberto que lançamos no ano passado. Originalmente, criamos o gVisor para oferecer proteção contra um comprometimento do host ao executar um código arbitrário e não confiável, enquanto ainda integrava a nossa infraestrutura baseada em contêiner. Como usamos o gVisor para aumentar a segurança das cargas de trabalho internas do Google, ele se beneficia continuamente do nosso conhecimento e da experiência na execução de contêineres em escala em um ambiente que prioriza a segurança. Além disso, usamos o gVisor nos serviços do
Google Cloud Platform (GCP), como o ambiente padrão do App Engine, Cloud Functions, Cloud ML Engine e, mais recentemente, o
Cloud Run.
O gVisor funciona fornecendo um kernel do sistema operacional independente para cada contêiner. Assim os aplicativos interagem com o ambiente virtualizado fornecido pelo kernel do gVisor em vez do kernel do host. O gVisor também gerencia e coloca restrições nas operações de arquivos e de rede, garantindo que haja duas camadas de isolamento entre o aplicativo com contêiner e o sistema operacional do host. Ao reduzir e restringir o uso do kernel do host, os invasores têm uma superfície de ataque menor e precisam contornar o mecanismo de isolamento do contêiner.
O GKE Sandbox usa o gVisor, abstrai os componentes internos e o apresenta como um serviço fácil de usar. Ao criar um pod, basta escolher o GKE Sandbox e continuar a interagir com seus contêineres como você faria normalmente. Não é necessário aprender um novo conjunto de controles nem um novo modelo mental.
Além de impedir possíveis ataques, o GKE Sandbox ajuda as equipes que executam clusters de vários locatários, como provedores de SaaS, que geralmente executam códigos desconhecidos ou não confiáveis. Existem muitos componentes para
multilocatário, e tecnologias como o GKE Sandbox dão o primeiro passo para oferecer recursos multilocatário mais seguros.
Como os usuários estão aumentando a proteção de contêineres com o GKE SandboxA criadora de refinaria de dados Descartes Labs aplica inteligência de máquina a conjuntos de dados massivos. “Na Descartes Labs, temos diversos dados de sensoriamento remoto medindo a Terra e queríamos permitir que nossos usuários construíssem modelos personalizados exclusivos para agregar valor às próprias organizações”, disse Tim Kelton, cofundador e chefe de SRE, Segurança e Operações na nuvem na Descartes Labs. “Como um provedor SaaS multilocatário, ainda queríamos aproveitar a programação do Kubernetes para gerar otimizações de custo, mas criar camadas de segurança adicionais sobre as cargas de trabalho individuais dos usuários. O GKE Sandbox fornece uma camada adicional de isolamento rápida de implantar, escalonar e que apresenta um bom desempenho nas cargas de trabalho do ML que executamos para nossos usuários."
Também ouvimos dos clientes iniciais do Shopify como eles estão usando o GKE Sandbox. “A Shopify está sempre procurando maneiras mais seguras de administrar as lojas dos nossos comerciantes", disse Catherine Jones, engenheira de segurança de infraestrutura da Shopify. “Hospedar mais de 800 mil lojas e executar códigos de clientes (como modelos personalizados e aplicativos de terceiros) exige muito trabalho para garantir que uma vulnerabilidade em um aplicativo não possa ser explorada para afetar outros serviços em execução no mesmo cluster.”
Jones e a equipe dela desenvolveram testes de prova de conceito para usar o GKE Sandbox. Agora eles planejam atualizar os clusters existentes e ativá-lo a todos os novos clusters para desenvolvedores. "O kernel userland do GKE Sandbox atua como um firewall entre aplicativos e o kernel do nó do cluster, impedindo que um aplicativo comprometido explore outros aplicativos por meio dele", disse Jones. “Dessa forma, poderemos oferecer mais segurança aos nossos mais de 600 aplicativos sem afetar os fluxos de trabalho dos desenvolvedores nem exigir que nossa equipe de segurança mantenha perfis seccomp e apparmor personalizados para cada aplicativo individual. Além disso, como o GKE Sandbox é baseado no projeto do gVisor de código aberto, podemos resolver problemas com mais eficiência e contribuir com código para oferecer suporte aos nossos casos de uso conforme necessário.”
Primeiros passos com o GKE SandboxQuando dizemos que a execução de um cluster com o GKE Sandbox é fácil, estamos falando sério. O comando a seguir cria um
pool de nós com o GKE Sandbox ativado, que você pode anexar ao cluster existente.
Um comentário :
Do you want to learn How to Catch a Cheater? On https://topspyingapps.com/catch-cheater/ you can read more about it
Postar um comentário