In this article
Guia de segurança nativa da nuvem para criar aplicações seguras
As arquiteturas modernas nativas da nuvem utilizam tecnologias de software de ponta para permitir que as empresas implantem aplicações com segurança e em escala, priorizando uma infraestrutura centrada na nuvem. A segurança nativa da nuvem aplica o mesmo paradigma à proteção dessas aplicações: uma abordagem moderna e pragmática que inclui conceitos como confiança zero e defesa em profundidade (DiD). A segurança de aplicações nativas da nuvem exige a mesma abordagem, com ferramentas e serviços desenvolvidos especificamente para esse fim.
O que é segurança nativa em nuvem?
Segurança nativa em nuvem é a prática de proteger plataformas, infraestruturas e aplicações baseadas na nuvem. A segurança é incorporada desde o início do processo de desenvolvimento até a produção, garantindo várias camadas de proteção e monitoramento contínuo para identificar novas vulnerabilidades.

O que é nativo da nuvem?
Nativo da nuvem é um conjunto de princípios de design, softwares e serviços voltado à criação de arquiteturas de sistemas que têm a nuvem como plataforma principal de hospedagem. O objetivo geral de uma aplicação nativa da nuvem é ser altamente escalável, resiliente e segura, aproveitando os recursos da infraestrutura moderna baseada em nuvem e usando metodologias de integração contínua para acelerar o desenvolvimento e a implantação.
A abordagem nativa da nuvem também simplifica as operações, reduzindo boa parte da sobrecarga envolvida no gerenciamento e na implantação da infraestrutura tradicional de servidores. Para isso, aproveita altos níveis de automação por meio de modelos de infraestrutura definidos por software.
Embora a definição acima ofereça uma base sólida para entender o conceito geral de nativo da nuvem, há interpretações mais específicas, como a da Cloud Native Computing Foundation (CNCF).
Na maioria dos casos, basta entender nativo da nuvem como “nuvem em primeiro lugar”. Já a CNCF enfatiza uma abordagem mais independente de fornecedores, promovendo projetos e softwares que podem ser portados entre provedores de nuvem com o mínimo de configuração adicional. A organização também dá grande ênfase a contêineres, foco do maior projeto da CNCF, o Kubernetes. Fica claro que uma empresa pode se encaixar na definição geral de nativo da nuvem e, ainda assim, usar serviços hospedados que não fazem parte do escopo definido pela CNCF. Cabe a cada equipe decidir qual definição se adequa melhor aos seus projetos.
O que são aplicações nativas da nuvem?
Aplicações nativas da nuvem são programas e serviços de software criados e projetados com base em arquiteturas nativas da nuvem. Uma aplicação nativa da nuvem é uma unidade específica e distinta, que reúne os princípios de design, os paradigmas de implantação e os processos operacionais necessários para aproveitar os benefícios da abordagem nativa da nuvem.
Ao contrário dos princípios gerais da abordagem nativa da nuvem, as aplicações específicas exigem decisões concretas de implementação e a escolha de ferramentas e padrões, como artefatos imutáveis, que ajudam a reforçar a funcionalidade nativa da nuvem do sistema como um todo.
Embora existam muitas maneiras de projetar e implantar softwares que se enquadram na definição de nativos da nuvem, algumas características gerais são compartilhadas por todas essas aplicações.
A maioria das aplicações nativas da nuvem depende muito da automação em várias etapas, dos testes e da criação automatizados do código principal da aplicação à implantação e ao dimensionamento automatizados da infraestrutura subjacente. Algumas das empresas mais bem-sucedidas fazem milhares de implantações por dia, usando um sistema CI/CD robusto, nativo da nuvem e altamente automatizado. Nosso relatório sobre o estado da segurança nativa da nuvem mostra que empresas com níveis mais altos de automação nativa da nuvem adotam mais técnicas de testes de segurança. Organizações com pipelines de implantação totalmente automatizados têm duas vezes mais chances de adotar ferramentas de SAST e SCA em seu SDLC para proteger aplicações nativas da nuvem.
Aplicações nativas da nuvem também costumam usar padrões de arquitetura de microsserviços, com componentes desacoplados que podem ser dimensionados individualmente para atender ao aumento da demanda por serviços. De modo geral, aplicações criadas com princípios de DevOps quase sempre dependem implicitamente da abordagem nativa da nuvem para ter sucesso.
Aplicações nativas da nuvem podem ser criadas mais rapidamente e escalar com mais eficiência do que os modelos anteriores, permitindo inovação mais ágil e reduzindo o tempo de lançamento no mercado para empresas de tecnologia. No entanto, o modelo nativo da nuvem traz uma mudança fundamental que deve ser considerada por quem é responsável por proteger e operar essas aplicações: o que antes era infraestrutura agora faz parte da aplicação. Em particular, no que diz respeito à segurança, as aplicações nativas da nuvem exigem uma nova forma de pensar o modelo de segurança, redefinindo os conceitos de segurança de aplicações e operações.
Comece a participar de desafios de Capture the Flag
Aprenda a resolver desafios de Capture the Flag assistindo sob demanda ao nosso workshop virtual introdutório.
Ferramentas de segurança nativa da nuvem versus ferramentas legadas
As ferramentas e os processos de segurança originalmente criados para lidar com a infraestrutura tradicional e legada de hospedagem de software não oferecem os recursos necessários para enfrentar adequadamente o paradigma dinâmico, altamente exposto e “sem perímetro” das arquiteturas nativas da nuvem.
Em poucas palavras: as ferramentas de segurança legadas não foram criadas para atender às demandas da nuvem moderna. Muitas ferramentas e padrões de design que fazem parte da rotina de uma pilha moderna de software talvez nem existissem quando algumas ferramentas de segurança foram originalmente projetadas.

Um exemplo perfeito é o uso hoje generalizado de ferramentas de infraestrutura como código (IaC), como o Terraform. Embora sejam tecnicamente “código”, elas costumam representar uma linguagem específica de domínio (DSL), com funcionalidades exclusivas. Isso torna difícil e ineficaz validá-las com ferramentas tradicionais, como as de análise estática. Como as ferramentas de IaC podem provisionar grandes quantidades de infraestrutura com relativamente pouco esforço, é fundamental protegê-las. Auditar código e configurações de IaC exige a implementação de práticas recomendadas e ferramentas que só surgiram recentemente na história da engenharia de software e infraestrutura.
Embora as ferramentas de IaC exponham uma lacuna crítica nas ferramentas de segurança legadas, elas representam apenas um dos muitos desafios para proteger aplicações nativas da nuvem em escala. Em essência, proteger essas aplicações exige incorporar ao modelo de segurança de aplicações conceitos que antes faziam parte das responsabilidades de segurança de TI e operações. A proteção desses componentes precisa começar com as pessoas desenvolvedoras que criam as aplicações, em vez de ficar inteiramente a cargo das equipes de segurança de TI e operações.
Como proteger aplicações nativas da nuvem
A segurança nativa da nuvem exige que o foco em segurança acompanhe a estratégia geral de adoção da nuvem da organização. As aplicações nativas da nuvem precisam ser protegidas no contexto das aplicações, e a abordagem deve levar em conta as mudanças nas equipes, nos processos e no modelo de infraestrutura usados para criá-las e operá-las. Por isso, um foco essencial da segurança nativa da nuvem deve ser a segurança de aplicações nativas da nuvem: identificar e corrigir vulnerabilidades durante o desenvolvimento. A abordagem precisa ser holística, com a segurança incorporada em todo o ciclo de vida do desenvolvimento de software.
Uma plataforma de segurança deve capacitar pessoas desenvolvedoras a se concentrarem em criar soluções que atendam aos objetivos de negócio e aproveitem os princípios nativos da nuvem, reconhecendo, ao mesmo tempo, que, à medida que mais infraestrutura é definida durante o desenvolvimento de aplicações, a equipe de desenvolvimento também passa a ser responsável por garantir que o código seja seguro. Se a arquitetura de nuvem não for uma prioridade em todas as conversas e decisões de design, a aplicação talvez não seja verdadeiramente nativa da nuvem.
Depois de definir a base do design, começa a codificação da aplicação e da infraestrutura. Nessa etapa, é fundamental começar a testar o código o quanto antes no ciclo de vida de desenvolvimento seguro de software (SSDLC). Como mencionamos anteriormente, a abordagem legada de análise estática como única medida já não é suficiente. Testes estáticos de segurança de aplicações (SAST), testes dinâmicos de aplicações (DAST), testes interativos de segurança de aplicações (IAST) e testes de segurança de aplicações móveis (MAST) são apenas alguns dos vários testes que devem ser realizados no código de aplicações nativas da nuvem.
Como proteger a infraestrutura nativa da nuvem
Proteger a infraestrutura nativa da nuvem de uma aplicação também traz desafios específicos. As configurações de IaC resultam na implantação de infraestrutura ativa, e muitas vezes as pessoas desenvolvedoras escrevem o código da infraestrutura e da aplicação ao mesmo tempo. São necessárias ferramentas de segurança capazes de lidar com esse desafio e se integrar perfeitamente aos fluxos de trabalho existentes, oferecendo informações e recomendações de correção diretamente para quem desenvolve. Em geral, isso significa disponibilizar informações de segurança diretamente nos IDEs e permitir testes locais por meio de ferramentas CLI.
Além de oferecer informações de segurança no ambiente local de desenvolvimento, as ferramentas de segurança nativa da nuvem também devem ser integradas a cada etapa do ciclo de vida do software. Deve ser prioridade automatizar as análises nos sistemas de gerenciamento de código-fonte e analisar artefatos derivados, como imagens de contêiner, nos sistemas de CI/CD. Os resultados dessas análises integradas também devem oferecer recomendações de correção para ajudar as pessoas desenvolvedoras a definir prioridades com facilidade.
A infraestrutura legada local muitas vezes podia depender de um perímetro lógico de rede para impedir o tráfego não autorizado até um conjunto específico de recursos internos, que normalmente contava com controles de segurança pouco rigorosos. Na abordagem nativa da nuvem, o perímetro deixa de ter valor prático. Em quase todos os provedores de nuvem, praticamente qualquer recurso pode ser disponibilizado publicamente com algumas linhas de configuração ou uma alteração na interface. Dados que parecem permanecer no mesmo domínio lógico podem atravessar várias redes e locais físicos antes de chegar ao destino. Diante disso, as empresas precisam adotar um modelo de “confiança zero”, no qual cada componente ou serviço é considerado um possível alvo de comprometimento. A autenticação ocorre entre todos os nós ou recursos de um sistema, independentemente da localização na rede.
Com a crescente ênfase na segurança de aplicações nativas da nuvem durante o desenvolvimento, é importante lembrar que a necessidade de soluções de segurança nativa da nuvem também se estende aos ambientes de produção. Em geral, as arquiteturas legadas tinham apenas um tipo de recurso computacional disponível: o servidor físico. As ferramentas de segurança tradicionais protegiam o perímetro desses recursos, usando configurações de rede estáticas e firewalls para controlar o acesso e o fluxo de tráfego. Já a infraestrutura nativa da nuvem é projetada desde o início para ser altamente dinâmica, permitindo implantar aplicações e reconfigurar recursos rapidamente.
O que é uma arquitetura de segurança nativa da nuvem?
Uma arquitetura de segurança nativa da nuvem é uma estratégia para garantir a visibilidade de tudo o que é implantado e executado na nuvem, permitindo que as equipes de segurança monitorem e protejam aplicações, infraestrutura e plataformas. Saiba mais sobre arquitetura de segurança na nuvem.
Aplicações nativas da nuvem podem usar muitos recursos computacionais e ambientes de execução diferentes, incluindo máquinas virtuais, contêineres e funções sem servidor. Os contêineres, outro componente do ecossistema nativo da nuvem, precisam de ferramentas de segurança desenvolvidas especificamente para esse fim para ajudar a monitorar e proteger seus ambientes de execução. Analisar artefatos e configurações em tempo de execução é fundamental para manter uma postura de segurança sólida em ambientes nativos da nuvem.
Comece a participar de desafios de Capture the Flag
Aprenda a resolver desafios de Capture the Flag assistindo sob demanda ao nosso workshop virtual introdutório.
Aplicações nativas da nuvem precisam de plataformas de segurança nativas da nuvem
Embora esteja em constante transformação, a nuvem veio para ficar. Com a aceleração da inovação, novas tecnologias e ferramentas precisarão ser desenvolvidas para ajudar as empresas a acompanhar esse ritmo. Com frequência, organizações levam para a nuvem sua infraestrutura de software local, mantendo abstrações e modelos de segurança ultrapassados e deixando de aproveitar as vantagens dos aplicativos nativos da nuvem.
Os modelos e as ferramentas de segurança criados para a época da hospedagem local representam um risco especialmente grave. A maioria foi desenvolvida antes de a nuvem se consolidar como uma plataforma de hospedagem de primeira linha e não é suficiente para garantir uma segurança adequada. Ter capacidade de escalar e, sobretudo, proteger seus aplicativos é fundamental em um cenário extremamente dinâmico e competitivo. Para continuar competitivas na era da nuvem, as empresas devem priorizar a criação de aplicativos nativos da nuvem e usar plataformas de segurança nativas da nuvem para protegê-los.
“Há muitas partes em movimento quando você implanta software,”... “Se você fizer tudo manualmente, o processo será demorado, tedioso e sujeito a erros — e você não vai querer repeti-lo com frequência. Por isso, sabíamos que precisávamos automatizar tudo, inclusive a segurança, com a Snyk.”
Alex Emery, gerente de produto de plataforma de nuvem na Coveo
Proteja cada componente dos seus aplicativos nativos da nuvem em uma única plataforma com a Snyk.