Alguns dias atrás Google revelou um novo projeto código aberto, que tem o nome «Vanir» que está posicionado como umAnalisador de código estático projetado para identificar vulnerabilidades em projetos de software, especificamente aqueles que ainda não foram corrigidos através de patches.
Como funciona Vanir é baseado em um banco de dados de assinaturas que contém informações sobre vulnerabilidades conhecidas e patches correspondentes, que permite comparar o código fonte com as correções aplicadas para detectar possíveis falhas de segurança.
Ao tornar o Vanir open source, o nosso objetivo é permitir que a comunidade de segurança mais ampla contribua e beneficie desta ferramenta, permitindo uma adoção mais ampla e, em última análise, melhorando a segurança em vários ecossistemas.
Entre o principais benefícios do Vanir os seguintes se destacam:
- Identificando vulnerabilidades em forks e códigos de terceiros
Vanir facilita a detecção de patches ausentes em bifurcações, modificações ou empréstimos de código fora do projeto principal. No ecossistema Android, isso permite verificar se os fabricantes de dispositivos originais aplicaram corretamente os patches necessários em suas versões personalizadas da plataforma. - Análise sem dependências de metadados
Ao contrário de outras ferramentas, Vanir não requer informações adicionais, como números de versão, histórico de commits ou listas SBOM (lista de materiais de software). A sua abordagem baseia-se exclusivamente na análise estática do código-fonte existente. - Geração automática de assinatura
Vanir automatiza a criação de assinaturas de informações públicas de vulnerabilidade (CVE) e patches publicados por mantenedores. Isto simplifica a atualização e manutenção do banco de dados de assinaturas. - Maior desempenho e eficiência
Ao contar com a análise estática do código-fonte, o Vanir oferece um desempenho significativamente melhor em comparação com a análise dinâmica ou ferramentas de verificação de montagem binária. - Autossuficiência e implementação local
A ferramenta permite que as organizações implantem e executem infraestrutura em seus próprios sistemas, eliminando a necessidade de recorrer a serviços externos ou depender de terceiros. - Banco de dados atualizado e confiável
Vanir usa um banco de dados de assinaturas apoiado pela equipe de segurança do Google Android, garantindo uma cobertura confiável e atualizada de vulnerabilidades críticas. - Integração com CI/CD
O suporte à integração com sistemas de integração contínua e entrega contínua (CI/CD) permite automatizar a detecção de vulnerabilidades no ciclo de desenvolvimento, facilitando a implementação de processos de segurança em DevSecOps. - Adaptabilidade e flexibilidade
Além da detecção de vulnerabilidades, o Vanir pode ser adaptado para outras tarefas, como identificação de clonagem de código, análise de duplicação ou utilização de código com licenças específicas em outros projetos.
Embora o Vanir tenha sido inicialmente projetado para Android, ele pode ser facilmente adaptado a outros ecossistemas com modificações relativamente pequenas, tornando-o uma ferramenta versátil para melhorar a segurança geral do software.
Composição de Vanir
Vanir consiste em dois componentes Principal:
- um gerador de assinatura
- um detector de patch perdido.
El gerador cria assinaturas com base em descrições de vulnerabilidades (em formato OSV) e links para patches correspondentes, processando commits de código em repositórios específicos como googlesource.com e git.codelinaro.org, com a possibilidade de adicionar suporte para outros serviços usando manipuladores pull.
Como funciona o Vanir?
O Detector Vanir analisa o código-fonte de um repositório e verifica se há correções de vulnerabilidades estão presentes. Esta função é executada usando algoritmos avançados Com refinamento de assinaturas e análise de múltiplos padrões, Vanir produz um relatório detalhado que destaca vulnerabilidades não corrigidas, fornecendo links para posições de código e referências a identificadores CVE e patches aplicados.
Como exemplo para entender a capacidade Vanir em termos de desempenho, este você pode escanear o código-fonte do Android, Com um banco de dados que cobre mais de 2000 vulnerabilidades, em 10 a 20 minutos em um PC moderno. A taxa de falsos positivos, baseada em dois anos de uso dentro do Google, continua baixa, em torno de 2.72%.
finalmente se você está interessado em saber mais sobre isso, você pode verificar os detalhes no link a seguir