A AWS disponibilizou o Continuum para vulnerabilidades no código nas regiões US East (N. Virginia) e US West (Oregon), quatro meses após anunciar uma prévia com acesso restrito. O serviço verifica os achados de vulnerabilidades considerando o código e o contexto do ambiente e, em seguida, sugere uma correção como patch ou pull request em um repositório conectado. Uma pessoa precisa revisar e aprovar cada correção antes que ela seja implementada.
Segundo a AWS, o serviço foi criado para ajudar as equipes a lidar com o grande volume de alertas de scanners. Executivos da empresa afirmam que grandes conjuntos de aplicações podem gerar milhares de achados por dia, muitos dos quais talvez não sejam acessíveis ou exploráveis, ou já estejam bloqueados por controles existentes. O Continuum busca mostrar quais problemas são exploráveis e como um ataque poderia afetar sistemas conectados, em vez de se basear apenas em uma classificação de gravidade.
Como o Continuum valida um achado?
O serviço cria um grafo de contexto a partir dos repositórios de código e das informações do ambiente AWS. As equipes podem conectar o código pelo GitHub ou por um bucket do Amazon S3. Também podem configurar um coletor da AWS para fornecer detalhes sobre os recursos e a rede da conta e da região em que o código é executado. Esse contexto ajuda o Continuum a avaliar se um invasor consegue alcançar um caminho vulnerável e quais outros sistemas podem ficar expostos.
Nos achados que consegue reproduzir, o Continuum executa uma exploração em um ambiente isolado e anexa código de prova de conceito e instruções para reproduzi-la. O serviço também fornece análise de código complementar, um caminho de ataque e uma avaliação do possível raio de impacto. Segundo a AWS, ele pode avaliar se as defesas existentes detectariam e bloqueariam o caminho validado.
O Continuum gera patches de código, atualizações de dependências ou alterações de configuração e pode abrir pull requests com essas sugestões. O console alerta que a geração de um patch não significa que a vulnerabilidade foi corrigida: alguém ainda precisa revisar e mesclar a alteração. A AWS afirma que pretende permitir que os clientes autorizem categorias de correções a serem aplicadas automaticamente após verificações de confiança, que incluem cobertura de testes, limites de escopo e sucesso anterior.
Quanto custa?
Segundo os detalhes de preços da AWS citados pelo InfoQ, a cobrança tem duas partes: uma tarifa mensal pelo contexto, calculada com base nas linhas de código protegidas, e uma tarifa de inferência de $10 por unidade de inferência do Continuum à medida que os achados são processados. O custo pelo contexto começa em $200 por milhão de linhas e cai para $100 por milhão acima de dez bilhões de linhas.
Os exemplos de preços da AWS mostram como o volume de achados pode elevar a conta. Proteger um milhão de linhas com 100 vulnerabilidades, cada uma consumindo uma unidade, custa $1,200. Proteger 100 milhões de linhas com 10,000 vulnerabilidades, cada uma consumindo duas unidades, custa $218,200, incluindo $200,000 em tarifas de inferência. Os exemplos mostram que o custo por achado é importante para equipes com grandes acúmulos de vulnerabilidades, mesmo quando a base de código não é especialmente grande.
Por que importa
As equipes de segurança podem usar o Continuum para obter evidências de exploração e sugestões de correção junto aos achados dos scanners, mas uma pessoa ainda precisa aprovar e mesclar cada correção. O coletor opcional da AWS fornece contexto sobre a rede e os recursos; ainda não está claro como o Continuum lida com achados que não consegue comprovar.