As regras identificam padrões conhecidos. A auditoria de segurança busca o que as regras deixam passar: um modelo do AI analisa o código mais importante de um projeto e o código que foi alterado desde a última auditoria, procurando por vulnerabilidades. Apenas o que for confirmado por uma verificação independente conta como achado.
Ativando-a
Segurança → Configurações → Auditoria de segurança possui uma chave de ativação e a frequência de execução: diária, semanal (padrão) ou mensal. Até você ativá-la, ela segue seu plano: ativada nos planos pagos e desativada no plano Gratuito. É possível ativá-la para uma organização Gratuita ou desativá-la para uma organização paga, seja como configuração padrão da organização ou para um projeto específico.
A auditoria analisa o branch padrão de cada projeto onde está ativada.
O que uma execução faz
- Selecionar arquivos. O Coroid classifica os arquivos-fonte do projeto e analisa primeiro os mais importantes: o código no modelo de ameaça's caminhos de alto impacto e pontos de entrada, com o código alterado desde a última auditoria antes do código que não mudou. Uma execução analisa no máximo 40 arquivos.
- Procurar por vulnerabilidades. Para cada arquivo, o modelo busca um conjunto fixo de tipos de vulnerabilidades: SQL, injeção de comandos e outros tipos, script entre sites, falsificação de requisições entre sites, falsificação de requisições do lado do servidor, travessia de caminho, redirecionamentos abertos, desserialização insegura, controle de acesso quebrado, autenticação quebrada, credenciais codificadas, criptografia fraca, exposição de informações e esgotamento de recursos. É necessário indicar as linhas exatas; respostas que apontem para fora do código analisado são descartadas.
- Confirmar. Cada problema é registrado como Ainda não confirmado. Para problemas críticos e de alta gravidade, uma verificação independente rederiva o problema a partir do código naquele commit. Se confirmado, o problema se torna um achado validado, com uma evidência estática comprovada. Veja Evidências.
- Procurar por variantes. As falhas vêm em famílias. Para cada achado confirmado, o Coroid busca no repositório pelo mesmo padrão e verifica cada correspondência da mesma forma.
Os achados da auditoria são exibidos como Auditoria de segurança como sua fonte em Segurança → Achados.
Qual é o custo?
A auditoria utiliza um modelo AI, portanto consome seus créditos e horas de agente como qualquer outro trabalho, e aparece no Mission Control durante a execução e em Configurações → Atividade com seu custo.
Cada execução tem um orçamento. Quando esse limite é atingido, ou quando seus créditos ou horas de agente acabam, a execução para e mantém o que já foi confirmado; a próxima execução começa novamente pelo código mais importante. Em projetos grandes, a execução continua em várias tarefas, de modo que uma única execução nunca ocupe uma vaga de agente por muito tempo.
Corrigindo o que é encontrado
Proprietários e administradores selecionam Corrigir em um achado confirmado para criar uma tarefa de correção. Veja Pull requests de correção. A auditoria ainda não abre tarefas de correção por conta própria.
Um achado de auditoria está no seu próprio código, portanto não é público. Em um repositório público, ou em um cuja visibilidade o Coroid não consegue confirmar, a correção é mantida privada até que um proprietário ou administrador a publique. Veja Divulgação.
Provas
Planejado. O Coroid comprovará um possível problema executando-o em uma cópia descartável da sua aplicação em um ambiente isolado, sem acesso à rede, sem credenciais e sem dados de clientes, e transformará a prova em um teste de regressão. Até então, a evidência da auditoria será a verificação independente descrita acima.
O relatório da Auditoria de segurança
O Novo trabalho não oferece mais um relatório escrito de auditoria de segurança. Ele redireciona para os achados da auditoria em Segurança.