Entendendo o CNAPP – Cloud-Native Application Protection Platform

O cenário de segurança na nuvem nunca esteve tão no centro das atenções. A cada atualização, novas possibilidades e, claro, novos riscos surgem. Plataformas de proteção de aplicações nativas da nuvem aparecem justamente porque a complexidade cresceu. As arquiteturas modernas exigem visibilidade, integração e rapidez para lidar com ameaças e conformidade. No fundo, talvez até pareça um quebra-cabeça onde cada peça é vital para proteger dados, reputação e funcionamento da empresa.

Se você alguma vez tentou rastrear um problema em um ambiente de nuvem distribuído, sabe o quanto pode ser frustrante lidar com múltiplas ferramentas isoladas, regras conflitantes e alertas sem contexto. Chega a ser um desafio acompanhar tamanha velocidade. Por isso, o que se busca são soluções que reúnam, automatizem e ajustem a proteção conforme as necessidades mudam tão rapidamente quanto as próprias aplicações.

Em 2024, os riscos em ambientes de nuvem alcançaram números preocupantes: os incidentes triplicaram em apenas um ano. Os dados do Relatório Global de Segurança na Nuvem mostram esse salto dramático. Difícil ignorar. Por trás desse aumento, não estão apenas hackers mais ousados, mas também a expansão acelerada dos próprios ambientes, a adoção de múltiplas nuvens e uma sede por inovação que desafia qualquer modelo tradicional de defesa.

A maioria das empresas já não depende mais de um único provedor. Usam várias nuvens para diferentes arquiteturas como containers, serverless e microserviços. Com isso, crescem as superfícies de ataque e, consequentemente, os pontos cegos. Ferramentas criadas para a era do data center, ou mesmo para nuvens isoladas, simplesmente ficam para trás.

É aí que entra a plataforma de proteção de aplicações nativas da nuvem –  CNAPP (Cloud-Native Application Protection Platform). Ela não nasce só para administrar regras de firewall ou alertar sobre malware. Seu papel é centralizar a proteção do ciclo de vida inteiro: desenvolvimento, implantação e operação.

O que é o CNAPP – plataforma de proteção nativa para a nuvem?

Pode soar um pouco técnico demais, mas, simplificando, essa solução integra várias funções que, antes, dependiam de ferramentas separadas. Não é só juntar tudo em um só lugar. A ideia é analisar riscos, detectar vulnerabilidades, automatizar respostas e garantir que as aplicações permaneçam seguras, sem causar lentidão ou confusão nas equipes de TI e desenvolvimento.

Em resumo, o CNAPP (Cloud-Native Application Protection Platform) é uma plataforma/solução de segurança abrangente projetada para proteger aplicações nativas da nuvem em todas as fases do seu ciclo de vida, desde o desenvolvimento até a implantação e operação em produção. Ela surge como uma resposta à complexidade dos ambientes modernos de nuvem, que envolvem microsserviços, containers, Kubernetes e infraestruturas dinâmicas. Ao unificar diferentes capacidades de segurança em uma única plataforma, a CNAPP oferece uma abordagem mais eficiente e integrada para mitigar riscos.

Um dos principais focos da CNAPP é a segurança preventiva, aplicando princípios de Shift-Left para identificar e corrigir vulnerabilidades ainda nas fases iniciais de desenvolvimento. Isso significa que questões como configurações incorretas, permissões excessivas ou imagens de containers vulneráveis são detectadas antes mesmo de serem implantadas na nuvem. Além disso, a plataforma monitora continuamente a infraestrutura em busca de ameaças em tempo real, como comportamentos anômalos em containers ou tentativas de exploração de vulnerabilidades em runtime.

Outro aspecto crítico da CNAPP é a visibilidade unificada, que permite às equipes de segurança gerenciar riscos em ambientes multicloud (AWS, Azure, Google Cloud) e híbridos de forma centralizada. Isso inclui a avaliação automática da conformidade com regulamentações como GDPR, LGPD e PCI-DSS, reduzindo o esforço manual e os erros humanos. Ao integrar-se com ferramentas DevOps e pipelines de CI/CD, a CNAPP facilita a adoção de práticas de DevSecOps, garantindo que a segurança seja uma parte natural do fluxo de trabalho, e não um obstáculo.

Entre as principais funcionalidades das plataformas temos:

  • Gerenciamento de postura de segurança em nuvem (CSPM – Cloud Security Posture Management): Serve para identificar más configurações, riscos de conformidade e falhas que abrem portas para invasores.
  • Proteção da carga de trabalho na nuvem (CWPP – Cloud Workload Protection Platform): Protege cargas de trabalho (containers, VMs, serverless)
  • Gerenciamento de identidade (CIEM -Cloud Infrastructure Entitlement Management): Gerencia permissões e acessos em ambientes de nuvem.
  • KSPM (Kubernetes Security Posture Management) – Foca na segurança de clusters Kubernetes.
  • Monitoramento de ameaças e vulnerabilidades: Detecta padrões incomuns ou pontos fracos tanto no código quanto na infraestrutura.
  • Automação de respostas: Simplifica e acelera reações a incidentes, bloqueando ameaças antes que virem problemas maiores.

Os principais componentes de uma plataforma integrada

A seguir, os principais elementos internos e suas funções:

Gestão de postura de segurança em nuvem (CSPM)

Essa parte do sistema se dedica a enxergar as nuvens como um todo. Investiga configurações erradas, acessos abertos, permissões exageradas, recursos esquecidos, backups sem proteção e até práticas que, à primeira vista, parecem inofensivas, mas aumentam o risco de vazamentos. O diferencial fica na automação: quando encontra uma ameaça, pode corrigir ou sugerir a ajuste rapidamente, sem depender de processos manuais demorados.

Proteção da carga de trabalho na nuvem (CWPP)

É o olho atento nas instâncias em execução. Desde virtual machines, containers, clusters Kubernetes, até funções serverless. Essa camada verifica políticas de execução, atualizações em tempo real e bloqueios diante de execuções anômalas ou tentativas de invasão.

Gestão de identidade e acesso (CIEM)

No mundo da nuvem, basta um acesso mal concedido para alguém conseguir mover montanhas. Essa função gerencia permissões de usuários, aplicações e recursos. Se alguém tenta acessar além do permitido, um alerta é gerado ou até mesmo o bloqueio é aplicado imediatamente.

Detection e resposta a ameaças

Com tantos serviços conectados, ameaças mudam de forma em segundos. Não adianta apenas consultar logs antigos. É preciso identificar comportamentos suspeitos em tempo real. O interessante é como as plataformas unificadas podem cruzar dados de várias partes do ambiente, achando padrões que ferramentas isoladas não enxergam. Frequentemente, algoritmos de machine learning são empregados para descobrir ataques muito sutis, verdadeiros “fantasmas digitais”.

Gerenciamento de vulnerabilidades

Talvez uma das funções mais temidas. Quando se fala em vulnerabilidade, é comum ouvir aquela pausa no corredor: “Será que não deixamos passar algo no deploy?” O monitoramento contínuo do código, bibliotecas e sistemas operacionais é constante. Atualizações são sugeridas com base em gravidade e contexto, impedindo que brechas conhecidas virem manchetes. A ideia nunca é só identificar, mas também priorizar o que precisa de correção, poupando energia dos times.

Automação: menos erros, mais agilidade

Essa talvez seja a característica mais encantadora para quem já sentiu o peso dos processos manuais. Imagine uma aplicação subindo em produção, mas um parâmetro inseguro passa despercebido. Com sistemas automatizados, esse tipo de desatenção vai para o histórico. Correções, análises de vulnerabilidade e respostas a incidentes se tornam processos automáticos, integrados ao pipeline.

Em vez de equipes respondendo a centenas de alertas, a automação filtra e direciona apenas os incidentes reais. Isso reduz a fadiga de alertas e também acelera respostas. No mundo DevSecOps, onde desenvolvimento e segurança andam juntos, essa automação é um alívio tanto para quem programa quanto para quem protege.

  • Menos tempo gasto com tarefas repetitivas.
  • Reações em minutos, não horas.
  • Correções sugeridas direto no código ou ambiente.

E, claro, transparência: tudo pode ser revisado, auditado e apresentado em relatórios claros (o que ajuda muito em auditorias e compliance).

Desafios culturais e práticos

Nem sempre é simples. Programadores muitas vezes querem agilidade, enquanto equipes de segurança tendem a ser mais cautelosas. Se a solução unificada não se integrar bem ao fluxo do time, vira um obstáculo. Por outro lado, quando os dois lados trabalham juntos desde a concepção da aplicação, problemas são evitados lá no início – onde a correção é mais barata e rápida.

Óbvio que a automação faz diferença, mas o fator humano ainda pesa. Pequenas reuniões diárias, revisões de código com foco em segurança e compartilhamento de indicadores costumam fazer mais pelo resultado final do que longas apresentações ou manuais extensos.

Conclusão

As plataformas de proteção de aplicações nativas da nuvem trouxeram um novo patamar para a segurança digital. Elas aparecem justamente para organizar o caos: reunindo funções como CSPM, CWPP, CIEM e detecção automatizada de ameaças num fluxo contínuo, transparente e adaptável.

O ambiente digital está mais agressivo e a pressão por conformidade aumenta, enquanto empresas aceleram em múltiplas nuvens, com equipes distribuídas e demandas infinitas. Nesse cenário, a adoção de plataformas integradas consegue reduzir riscos. Ganha agilidade, responde mais rápido, investe tempo no que faz diferença.

No fim, a proteção do ciclo de vida inteiro, multiplicada pela automação e colaboração, muda o jogo.

O que é Application Security Testing (AST)

O AST (Application Security Testing) é um termo abrangente usado para categorizar ferramentas e metodologias que testam a segurança de aplicações, identificando vulnerabilidades em diferentes estágios do ciclo de desenvolvimento (SDLC). O termo foi cunhado para unificar as abordagens de segurança em três categorias principais:

  • SAST (Static Application Security Testing)
  • DAST (Dynamic Application Security Testing)
  • IAST (Interactive Application Security Testing)

Posteriormente, o mercado também incluiu:

  • SCA (Software Composition Analysis) – Para análise de dependências vulneráveis (ex: bibliotecas de terceiros).
  • API Security Testing – Focado em testes específicos para APIs.

Aplicar testes de segurança em software é fundamental para proteção de dados e evitar incidentes de segurança. Quando falamos de SAST, DAST, IAST, SCA, API Security Testing e também o Pentest, estamos nos referindo a diferentes métodos de identificar falhas antes que elas possam ser exploradas por criminosos.

Com um bom processo de segurança ao longo do SDLC (Ciclo de Vida do Desenvolvimento de Software), você pode perceber vulnerabilidades durante o desenvolvimento. Por exemplo, o SAST vai trabalhar com o código-fonte para identificar falhas desde o início. Já o DAST testa as aplicações em funcionamento para encontrar brechas.

Essa abordagem garante que você não apenas corrija problemas, mas faça isso de forma eficaz. Afinal, queremos que os usuários se sintam seguros ao usar nossas aplicações. Investir em boas práticas de segurança é um passo importante que traz um retorno enorme no futuro.

Componentes principais do AST: SAST, DAST e IAST

No mundo da segurança de aplicações, é importante entender alguns conceitos para proteger seu software de forma eficaz. Vamos falar sobre três métodos essenciais: SAST, DAST e IAST. Cada um desempenha um papel importante, ajudando a identificar vulnerabilidades antes que se tornem um problema sério.

Para facilitar a compreensão, confira os pontos principais de cada método:

  • SAST: Analisa o código-fonte (ou binários) de forma estática (sem executar a aplicação). Identifica vulnerabilidades como SQL Injection, XSS, hardcoded passwords, más práticas de codificação, entre outras. É integrado a IDEs (ex: SonarQube, Checkmarx) ou em pipelines de CI/CD.
  • DAST: Testa a aplicação em execução (dinamicamente), simulando ataques externos. Foca em vulnerabilidades como injeções, configurações inseguras e falhas em APIs.
  • IAST: Combina SAST + DAST, analisando o código durante a execução (com agentes ou sensors no runtime). Detecta vulnerabilidades em tempo real, como autenticação quebrada ou vazamento de dados.

Incorporar esses testes ao seu SDLC é crucial para garantir a segurança. Lembre-se, a proteção deve vir desde o início do desenvolvimento para preservar os dados e a confiança do usuário.

CritérioSASTDASTIAST
TipoEstático (código)Dinâmico (runtime)Híbrido (código + runtime)
MomentoDesenvolvimentoTeste/ProduçãoTeste/Produção
PrecisãoMédia (falsos positivos)Baixa-MédiaAlta
CoberturaCódigo internoComportamento externoAmbos

Falando um pouco mais de SAST e como ele funciona?

O SAST é uma ferramenta que analisa o código do seu aplicativo antes dele ser executado. Pense nisso como ter um revisor que aponta erros enquanto você escreve um texto. Por exemplo, se você está criando um sistema de login, o SAST pode detectar se você esqueceu de proteger dados sensíveis, evitando problemas maiores no futuro.

Essa técnica ajuda a agilizar o desenvolvimento e a criar aplicativos mais seguros. Assim, você corrige falhas logo no início do processo, o que é muito mais fácil e menos custoso.

O SAST é utilizado na fase de desenvolvimento (Shift Left) e integrado a IDEs. Entre as suas vantagens, pode detectar problemas cedo, reduzindo custos de correção e cobre grande parte do código.

Já as suas limitações são que as ferramentas podem gerar falsos positivos assim como não identificar vulnerabilidades em tempo de execução.

DAST: a segurança em tempo real

O DAST, ou Dynamic Application Security Testing, é uma ferramenta para proteger as aplicações enquanto estão em execução. Diferente do SAST, que analisa o código antes da execução, o DAST efetua testes em tempo real. Ele simula ataques para identificar vulnerabilidades que podem surgir quando o aplicativo está acessível. Por exemplo, ao usar um aplicativo de banco, um teste DAST poderia identificar falhas de segurança, como senhas fracas sendo expostas.

Integrar o DAST ao seu processo de desenvolvimento é importante. Isso significa que você pode corrigir problemas rapidamente e fortalecer a segurança.

É utilizado em fase de testes ou produção (ambiente real) com ferramentas como OWASP ZAP, Burp Suite, Nessus.

Suas principais vantagens são em identificar riscos reais, como problemas de deploy ou dependências externas e não requer acesso ao código-fonte.

Já suas limitações são em não apontar a linha exata do código vulnerável e pode ser lento e menos abrangente que SAST.

IAST: a combinação do SAST e DAST

O IAST combina técnicas de SAST e DAST, analisando o código enquanto a aplicação está em funcionamento. É uma abordagem avançada de segurança que combina elementos do SAST (análise estática de código) e do DAST (testes dinâmicos em runtime), operando diretamente durante a execução da aplicação. 

Ao instrumentar o código com agentes ou sensores, o IAST monitora o comportamento da aplicação em tempo real, identificando vulnerabilidades como injeções SQL, quebras de autenticação e vazamento de dados com maior precisão e menos falsos positivos que métodos tradicionais. Sua integração contínua em ambientes de teste e produção permite correções ágeis, sendo ideal para pipelines DevOps, onde oferece visibilidade detalhada das vulnerabilidades no contexto real da aplicação, sem impactar significativamente o desempenho. Essa tecnologia representa um avanço para segurança em aplicações modernas, especialmente em arquiteturas de microsserviços e APIs.

Quando é usado? Em ambientes de teste (QA/staging) ou produção monitorada.

Vantagens: Precisão maior (menos falsos positivos) e Monitoramento contínuo.

Limitações: Pode impactar performance da aplicação e requer instrumentação do código.

Outro componente do AST: o SCA

O Software Composition Analysis ajuda a descobrir quais bibliotecas e componentes de terceiros você está utilizando. Ao analisar suas dependências, você evita surpresas desagradáveis, como vulnerabilidades conhecidas que podem comprometer a segurança. Além disso, incluir o SCA no seu processo de desenvolvimento é uma maneira inteligente de proteger seu código. Ao lado de outras práticas como SAST, DAST, e Pentest, o SCA forma uma rede de proteção. Assim, você assegura que seu software, desde o início até o fim do SDLC, foi construído com componentes confiáveis e seguros, tornando sua aplicação muito mais forte.

Pentest: um ataque autorizado para segurança reforçada

Um pentest  simula um ataque real ao seu software para encontrar vulnerabilidades

Aqui estão algumas etapas importantes desse processo:

  • Reconhecimento: A primeira fase envolve coletar informações sobre o sistema. Quanto mais dados você tiver, melhor.
  • Exploração: Aqui, tentamos acessar dados não autorizados. Essa é a parte onde encontramos as brechas.
  • Relatório: Por fim, reunimos tudo em um documento. Essa é uma ferramenta valiosa para que você possa corrigir as falhas e melhorar a segurança.

API Security Testing: O Que É e Por Que é Importante?

As APIs (Application Programming Interfaces) são fundamentais para a comunicação entre sistemas modernos, como aplicações web, mobile, microserviços e cloud. No entanto, elas também são alvos frequentes de ataques, incluindo injeções de dados, autenticação comprometida e vazamento de informações.

O API Security Testing é um conjunto de técnicas e ferramentas projetadas para identificar vulnerabilidades em APIs antes que possam ser exploradas por invasores.

Integração do AST no SDLC: segurança desde o início

Integrar o Application Security Testing durante o SDLC garante que a segurança das aplicações esteja sempre em primeiro lugar.

Imagine descobrir uma falha grave na última hora; é desgastante, certo? Se a segurança for abordada desde o início, você fortalece seu produto e transmite confiança aos usuários. Investir em práticas como SAST, DAST, IAST e Pentest ao longo do desenvolvimento ajuda a criar soluções mais seguras.

Aqui estão alguns benefícios importantes que esses testes trazem:

  • Detecção precoce: Isso significa descobrir falhas antes que se tornem um grande problema. Imagine encontrar uma pequena rachadura na parede da sua casa; quanto antes você consertar, melhor!
  • Redução de custos: Consertar erros no início do processo de desenvolvimento é muito mais barato do que esperar até o produto estar pronto. Você economiza recursos e tempo.
  • Aumento da confiança: Quando os usuários sabem que suas informações estão seguras, ficam mais propensos a usar o aplicativo e confiar na marca.
  • Conformidade: Seguir normas e regulamentos evita multas e problemas legais, garantindo que sua empresa esteja sempre em dia com as leis.

Investir em segurança é uma escolha inteligente e necessária para o seu software!

Desafios e considerações ao implementar AST

Implementar segurança nos aplicativos pode ser complicado, especialmente quando a pressa é uma constante. Um dos maiores desafios que você pode encontrar é a falta de conhecimento da equipe sobre práticas de segurança pois algumas ferramentas de teste podem não se integrar bem aos processos que você já tem, o que gera retrabalho e frustração.

A cultura da empresa também pode ser um obstáculo. Muitas vezes, há uma preferência pela velocidade em vez de segurança, aumentando os riscos. Para enfrentar isso, é essencial criar uma mentalidade de segurança desde o início do desenvolvimento de software. Aqui estão algumas dicas para facilitar essa implementação:

  • Treinamento contínuo: Invista na capacitação da equipe.
  • Integração de ferramentas: Escolha soluções que funcionem bem com o que já existe.
  • Cultura de segurança: Encoraje a equipe a ver a segurança como uma prioridade, não um obstáculo.

Futuro do Application Security Testing

O futuro do teste de segurança de aplicativos está mudando e se tornando cada vez mais importante. Com o aumento das ameaças cibernéticas, é importante que as empresas fiquem um passo à frente. Por exemplo, o uso de ferramentas como SAST, DAST e IAST permite que as vulnerabilidades sejam identificadas desde as fases iniciais do desenvolvimento. O que antes era um processo isolado, agora é parte integrante do ciclo de vida do desenvolvimento de software (SDLC). Além disso, práticas como Pentest ajudam a validar a segurança das aplicações em ambientes reais. Isso significa que as equipes precisam colaborar e adotar uma mentalidade de segurança. Assim, a proteção dos dados não é apenas responsabilidade de um setor, mas de toda a empresa. E, ao integrar esses testes no dia a dia, a segurança se torna mais eficaz.

Conclusão: segurança de aplicações como prioridade

A adoção de AST (Application Security Testing) é fundamental para garantir a segurança de aplicações em um cenário onde ameaças cibernéticas são cada vez mais sofisticadas e frequentes. Ao integrar testes estáticos (SAST), dinâmicos (DAST) e interativos (IAST) no ciclo de desenvolvimento, as organizações identificam e corrigem vulnerabilidades ainda nas fases iniciais, reduzindo riscos e custos associados a brechas exploradas em produção.

Essa abordagem proativa não apenas protege dados sensíveis, mas também fortalece a conformidade com regulamentações e a confiança dos usuários. Além disso, o AST moderno vai além da detecção tradicional, incorporando análises de dependências (SCA) e testes específicos para APIs, cobrindo todo o espectro de ameaças. Em um mundo de desenvolvimento ágil e DevOps, automatizar a segurança com AST permite que as equipes entreguem software rápido sem sacrificar a proteção. Empresas que ignoram essa prática não só ficam expostas a violações caras, mas também perdem competitividade em um mercado que valoriza a segurança como requisito

Vulnerabilidades e explorações de servidores web

No mundo digital, vulnerabilidades em softwares são como brechas em um castelo e são como oportunidades para invasores mal-intencionados explorarem e causarem danos. Logo após a descoberta de uma falha, os atacantes, munidos de ferramentas automatizadas, vasculham a internet em busca de servidores e aplicativos que ainda não foram atualizados e estão vulneráveis.

Os atacantes possuem um arsenal de técnicas para explorar vulnerabilidades, cada uma com suas nuances e desafios. Algumas das mais comuns são:

Injeção de SQL: Manipulando consultas SQL, o invasor pode roubar dados confidenciais do banco de dados da aplicação.

Sequestro de Sessão: Interceptando cookies de autenticação, o hacker pode se personificar como um usuário legítimo e acessar áreas restritas.

Cross site scripting (XSS): Injetando scripts maliciosos em páginas da web, o invasor pode roubar informações do usuário ou redirecioná-lo para sites perigosos.

Execução Remota de Código (RCE): Explorando falhas no código da aplicação, o hacker pode executar comandos arbitrários no servidor, assumindo total controle.

Um caso mais recente, o Log4j 2, uma falha crítica permitiam que invasores executassem comandos maliciosos em diversos servidores de aplicações, abrindo as portas para diversos ataques. A reação foi imediata: os atacantes, iniciaram uma corrida em busca de sistemas vulneráveis.

Em dezembro de 2021, uma falha crítica (CVE-2021-44228) na biblioteca Log4j 2, amplamente utilizada em softwares Java, expôs sistemas em todo o mundo. A vulnerabilidade permitia a execução remota de código (RCE) por invasores, abrindo portas para diversos ataques, como roubo de dados, instalação de malware e sequestro de sistemas.

A facilidade de exploração e a amplitude da adoção do Log4j 2 tornaram essa falha uma das mais graves da história recente. Governos, empresas e organizações de todo o mundo se mobilizaram para atualizar seus sistemas e mitigar os riscos.

Mas nem sempre os ataques exploram falhas recém-descobertas. Se uma vulnerabilidade conhecida puder dar acesso a informações valiosas, os invasores não hesitarão em explorá-la. Isso reforça a importância da “segurança proativa”: antecipar e prevenir falhas no ciclo de desenvolvimento de software, antes que os invasores as descubram.

Proteger as aplicações exige vigilância constante e atualização contínua. Implementar medidas de segurança robustas como codificação segura, atualização de softwares, uso de web application firewalls (WAF), executar testes de penetração regulares e monitoramento de vulnerabilidades, é crucial para mitigar os ataques.

Referências

Web Application Firewalls (WAFs) For Dummies®, F5 3rd Special Edition
Copyright © 2024 by John Wiley & Sons, Inc., Hoboken, New Jersey


Os desafios de segurança do desenvolvimento de aplicativos modernos

Na era digital, a agilidade e a rápida colocação de aplicativos no mercado são cruciais para o sucesso. Por isso, muitas empresas adotam métodos de desenvolvimento Agile e culturas DevOps, possibilitando múltiplas releases de código por dia.

No entanto, essa busca por velocidade pode comprometer a segurança. Desenvolvedores de aplicativos frequentemente dependem de componentes como containers, microsserviços e frameworks, muitos dos quais são softwares de código aberto (FOSS – Free Open-source software). Apesar de o FOSS ser uma grande fonte de inovação, ele também expande a superfície de ataque para agentes mal-intencionados.

APIs são outro componente crítico de aplicações modernas, permitindo a integração entre diferentes softwares. No entanto, APIs também são suscetíveis a explorações e abusos. Ao contrário de páginas web, APIs não são projetadas para interação direta do usuário, o que pode deixá-las fora do radar de equipes de segurança, tornando-as especialmente vulneráveis a ataques.

Componentes e APIs de código aberto, embora facilitem a vida dos desenvolvedores, introduzem novos riscos de segurança. Controles tradicionais, como desenvolvimento orientado a testes, nem sempre são eficazes com esses componentes. Por isso, o gerenciamento e a segurança da API precisam ser integrados ao pipeline de desenvolvimento.

Infelizmente, velocidade e segurança muitas vezes entram em conflito. A pressão para implementar novos códigos rapidamente pode levar ao uso inseguro de componentes FOSS e APIs. Pipelines de CI/CD que automatizam o desenvolvimento e a implantação geralmente carecem de testes de segurança adequados, gerando atrito entre desenvolvedores e equipes de segurança, pois os primeiros podem ver os testes como um obstáculo à agilidade.

Além disso, métodos de teste tradicionais, como testes unitários e de regressão, concentram-se na funcionalidade e não na segurança. Isso pode deixar os aplicativos vulneráveis a novas ou reintroduzidas vulnerabilidades.

A proliferação de endpoints digitais em arquiteturas modernas complica ainda mais o cenário de segurança. À medida que os aplicativos tradicionais evoluem para sistemas baseados em API, o número de possíveis superfícies de ataque aumenta. Equipes de segurança podem não estar cientes de todas as APIs em seu ecossistema, dificultando sua proteção adequada.

Para enfrentar esses desafios, as empresas precisam implementar medidas robustas de segurança de API. Isso inclui:

  • Descoberta dinâmica de API: Identificação automática de APIs em seu ambiente.
  • Proteções automatizadas usando aprendizado de máquina: Mitigação de ameaças em tempo real.
  • Colaboração estreita entre desenvolvedores e equipes de segurança: Integração da segurança no processo de desenvolvimento.

Ao priorizar a segurança da API, as empresas podem se proteger do crescente número de incidentes e violações de segurança.

Lembre-se:

  • A segurança da API é essencial para proteger seus dados e aplicativos.
  • Implemente medidas robustas de segurança de API para mitigar riscos.
  • Colabore entre desenvolvedores e equipes de segurança para integrar a segurança no processo de desenvolvimento.
  • Priorize a segurança da API para se proteger contra incidentes e violações.

Com as ferramentas e estratégias certas, você pode garantir que seus aplicativos modernos sejam seguros e confiáveis.

Para mais informações, consulte os seguintes recursos:

Iniciando os testes de APIs Meraki com DevNet Sandbox

O Cisco Meraki é um conjunto de soluções de rede gerenciadas pela internet que permite uma única fonte de gerenciamento sobre locais, infraestrutura e dispositivos. Componentes incluem uma solução completa de TI gerenciada por nuvem para atendimento as soluções de wireless, switching, segurança, gerenciamento de dispositivos móveis (MDM) e comunicações, integrando o hardware, software e a nuvem.

Há cinco maneiras pelas quais uma aplicação pode estender as funcionalidades da plataforma Meraki:

  • A Dashboard API, que fornece um serviço RESTful para provisionamento, gerenciamento e monitoramento de dispositivos.
  • Alertas de webhook, um serviço que permite atualizações em tempo real da saúde e configuração da rede.
  • A API de localização, um método HTTP POST configurado no Meraki Dashboard que fornece informações de localização do cliente (GPS, X/Y) com base no posicionamento do mapa do Meraki Access Point (AP) e na intensidade do sinal do cliente.
  • O External Captive Portal (EXCAP), que permite que uma organização crie modelos de engajamento personalizados para dispositivos que aproveitam seu ambiente WiFi.
  • MV Sense, que oferece chamadas de API REST e fluxo de dados em tempo real para aproveitamento das câmeras MV12

O ambiente “Meraki DevNet Always On Read Only Sandbox” fornece um ambiente de desenvolvimento para validar e testar o ‘Cisco Meraki Dashboard’, Dashboard API, integração do Captive Portal, MV Sense, Webhook Alerts e Location Scanning.

Todas as chamadas de API são muito bem documentadas usando a especificação OpenAPI (Swagger interface). Há ótimo trabalho disponibilizando tudo como um Documento Postman, um recurso muito útil no desenvolvimento de uma API.

Postman é uma ferramenta de desenvolvimento de API baseada no modelo web/cliente, perfeita para simular chamadas e explorar como funcionam determinadas APIs. A plataforma da Meraki está atualmente na sua API versão 1.x .

Qual o uso das APIs?
Existem muitos casos de uso para essas APIs, atendendo a requisitos de escalabilidade ​​para os administradores e automatização para as redes Meraki. Os casos de uso comuns são:

  • Provisionamento em massa (usando a API do painel)
  • Monitoramento avançado (usando MV Sense e APIs MR)
  • Automação de rede (usando chamadas MS)
  • Integrações na nuvem (integrar Meraki com dispositivos de terceiros — com Cisco Umbrella, por exemplo)

Cisco Sandbox

O ambiente Cisco DevNet Sandbox permite que engenheiros, desenvolvedores, administradores de rede, arquitetos ou qualquer pessoa que queira desenvolver e testar as APIs, controladores, equipamentos de rede, suíte de colaboração e muito mais da ferramentas da Cisco, possa fazê-lo gratuitamente!

https://developer.cisco.com/site/sandbox

Ambiente Meraki

Nesse post faremos um laboratório utilizando a infraestrutura Meraki (Meraki Always On).

Faça login, no dashboard com as credenciais fornecidas, acesse o ambiente “DevNet Sandbox”

Certifique se o use o uso de API está ativo “Enable access to the Cisco Meraki Dashboard”. Logado no painel vá para: Organization -> Settings -> Dashboard API Access, marque a caixa:

Gere uma API key para aquela conta. Cada conta poderá ter até 2 API Keys.

Clique no seu Perfil (canto superior direito): My Profile -> API Access -> Clique em “Generate API Key” copie e armazene em local seguro.

Postman

Depois de seguir os passos acima, você pode começar a fazer chamadas de API para seu dashboard e dispositivos usando o Postman ou seus scripts Python.

Se você precisar de ajuda com o Postman, incluindo como importar a API Postman Meraki, confira: https://developer.cisco.com/meraki/build/meraki-postman-collection-getting-started/  com poucos cliques é possível instalar a Coleção “Meraki Dashboard API – v1”

Vamos fazer nossa primeira chamada de API e definir o escopo da nossa documentação da API, pois existem algumas maneiras de fazer isso:

  • Você pode acessá-lo através do Meraki Dashboard: Clique em Help -> API Docs.
  • Importe o documento de API mais recente do Postman para sua conta do Postman.

Após importar para sua conta você poderá ver quantas chamadas de API estão disponíveis e como ela está organizada, confira abaixo:

Escolha um request que você possa preencher facilmente com as informações que já possui (por enquanto só temos a chave da API, portanto precisamos de uma solicitação que exija apenas o valor da Chave da API), por exemplo, poderíamos listar todas as Organizações disponíveis no Chave de API que estamos usando, depois de inserir os campos obrigatórios no cabeçalho da API:

baseURL: https://api.meraki.com/api/v1

apiKey: ae829149e162f8dd0535ca5f0b98e96f1d3adc29 (a API key gerada )

1º Passo, crie um ambiente. Clique no ícone do olho na parte superior direita e  “Add” para criar um novo ambiente.

2º Defina as variáveis. Adicione as informações baseURL e keyAPI

3º Execute o teste para coletar o ID do ambiente “DevNet Sandbox” dentro de “Organization” do ambiente Meraki.

Armado com essas informações, podemos começar a criar scripts e integrar nosso ambiente Meraki com outras ferramentas/plataformas.

Uma vez que coletamos a informação do ID da Organização, podemos atualizar as variáveis e coletar as informações de rede.

Por exemplo, podemos coletar o ID das redes.

Uma vez que coletamos a informação do ID da Rede, podemos atualizar as variáveis e coletar as informações de rede.

Por exemplo, podemos coletar as informações detalhadas dos equipamentos de rede, como endereço IP, serial, geolocalização, modelo, etc.

Coletar os SSIDs da rede:

Visualizando o mesmo SSID no ambiente Meraki:

Com o método PUT podemos alterar ou inserir nos parâmetros para a os SSIDs da Rede.

Referências

Andre Camillo: https://andrecamillo.medium.com/getting-started-with-meraki-apis-7633a822a9da

Charles Judd: https://www.youtube.com/watch?v=86uq_Imi-L0

Meraki API V1: https://developer.cisco.com/meraki/api-v1/

Postman, API development tool: https://www.postman.com/

Meraki API V1 Postman Documentation (import from here):  https://documenter.getpostman.com/view/897512/SzYXYfmJ

Getting started with Postman: https://developer.cisco.com/meraki/build/meraki-postman-collection-getting-started/

https://documenter.getpostman.com/view/897512/SzYXYfmJ#intro

Ambiente de Lab Gratuito – Cisco Devnet Sandbox

O ambiente Cisco DevNet Sandbox permite que engenheiros, desenvolvedores, administradores de rede, arquitetos ou qualquer pessoa que queira desenvolver e testar as APIs, controladores, equipamentos de rede, suíte de colaboração e muito mais da ferramentas da Cisco, possa fazê-lo gratuitamente!

Cisco DevNet Sandbox
https://developer.cisco.com/site/sandbox/

Outros Links
Meraki API V1: https://developer.cisco.com/meraki/api-v1/
Postman, API development tool: https://www.postman.com/
Meraki API V1 Postman Documentation (import from here): https://documenter.getpostman.com/view/897512/SzYXYfmJ
Getting started with Postman: https://developer.cisco.com/meraki/build/meraki-postman-collection-getting-started/
https://documenter.getpostman.com/view/897512/SzYXYfmJ#intro

UM SYSADMIN PODE VIRAR UM SRE – LUCAS DE SOUZA – Podcast #3

Nesse bate-papo com o Lucas de Souza conversamos sobre a função de um SRE (Site Reliability Engineering), cultura DevOps, ferramentas e migração de carreira.

A função do SRE requer experiência, conhecimento e habilidades em desenvolvimento de software, administração de sistemas e operações de TI.

As equipes de SRE são responsáveis pela maneira como o código é implantado, configurado e monitorado, bem como pela disponibilidade, latência, gerenciamento de mudanças, resposta a emergências e gerenciamento de capacidade dos serviços em produção.