Skip to main content

Suprimindo problemas no Snyk

Escrito por
Headshot of Anna Debenham

Anna Debenham

15 de fevereiro de 2018

0 minutos de leitura

Ignorar problemas de segurança não deve ser a ação padrão, mas às vezes é necessário. O Snyk valida apenas vulnerabilidades existentes em componentes dos quais o projeto depende, por isso a taxa de falsos positivos é relativamente baixa (o que deve reduzir a necessidade de ignorá-las). Ainda assim, há motivos para você querer suprimir um problema — por exemplo, se ele ainda não tem correção, talvez você queira adiá-lo até que haja uma. Alguns problemas não são relevantes para determinados projetos (por exemplo, um ataque de negação de serviço contra um serviço interno). Em outros casos, o caminho do problema impede sua exploração.

O recurso de ignorar problemas está disponível na CLI desde o primeiro dia, por meio do arquivo de políticas .snyk. Você verá essa opção sempre que executar snyk wizard em um projeto e uma vulnerabilidade for encontrada. Ao ignorar a vulnerabilidade, um registro é adicionado ao arquivo .snyk com o caminho e o motivo informado, se houver.

'npm:moment:20170905':
moment:
reason: The reason given
expires: '2017-12-29T16:10:16.946Z'

Agora que fazemos integração com o Heroku, onde não é possível editar um arquivo de políticas durante a execução, tornou-se ainda mais importante disponibilizar esse recurso também na nossa interface.

Poderíamos ter implementado isso como uma simples caixa de seleção que remove o problema da tela por completo, como se nunca tivesse existido. Com certeza, isso tornaria rápido e fácil ignorar problemas. Em vez disso, queremos incentivar um comportamento mais responsável, fazendo o recurso funcionar como um botão de adiamento. Você pode selecionar por que quer ignorar o problema e por quanto tempo. Ao marcar “Ignorar este problema até que haja uma correção” (opção marcada por padrão quando não há uma medida de correção disponível), a vulnerabilidade voltará a aparecer assim que tivermos uma correção. Você também pode incluir detalhes adicionais sobre o motivo para ignorar o problema.

Caixa de diálogo intitulada “Ignorar este problema”, com opções para ignorá-lo temporariamente por 30 dias ou até que uma correção esteja disponível.

Isso reproduz o que sempre foi possível na nossa CLI, mas também conseguimos acrescentar algumas melhorias. Ao ignorar um problema na interface, você verá quem o ignorou e poderá editá-lo ou deixar de ignorá-lo.

Alerta de segurança para uma injeção de entidade externa XML de alta gravidade no nokogiri, marcada como ignorada, com caminho de ignorados e detalhes de expiração.

Como suprimir vulnerabilidades envolve certo risco, adicionamos uma opção para disponibilizar esse recurso apenas a administradores. Se você tiver acesso ao recurso Relatórios, também poderá ver um resumo da quantidade de problemas ignorados nos projetos da sua organização e filtrar esses problemas para analisar cada um deles. Se o problema tiver sido ignorado na nossa interface, incluiremos o nome de quem tomou essa decisão para garantir mais responsabilidade.

Os problemas ignorados estarão sempre disponíveis para consulta e edição pelo filtro de problemas do seu projeto, e você também poderá continuar a ignorá-los pelo arquivo de políticas .snyk. Se você usar nossa API, as informações sobre os problemas ignorados também serão incluídas.

É um ótimo recurso que temos o prazer de oferecer, mas use-o com moderação!

Publicado em: