Pular para o conteúdo
Todos os conceitos

Aviso de vulnerabilidade

Um aviso diz qual pacote é afetado e em qual faixa de versões; a sua versão só é vulnerável se cair dentro da faixa.

Quando uma falha é descoberta num pacote, alguém publica um aviso (um CVE, ou um GHSA no GitHub). Ele traz o nome do pacote, a faixa de versões afetadas e a primeira versão que corrige (a patched). O que importa para você é simples: a versão que você instalou está dentro da faixa afetada?

A faixa usa comparações de versão. < 1.4.2 quer dizer toda versão anterior a 1.4.2. >= 3.0.0 < 3.2.5 quer dizer de 3.0.0 (inclusive) até 3.2.5 (exclusive). Versões seguem o padrão maior.menor.correção (semver), e você compara campo a campo: 3.1.4 é maior que 3.0.0 e menor que 3.2.5, logo cai na faixa.

Exemplo: o aviso diz que qs-lite é afetado em >= 3.0.0 < 3.2.5, corrigido em 3.2.5. O seu lockfile mostra qs-lite em 3.1.4. Como 3.0.0 <= 3.1.4 < 3.2.5, a sua versão está vulnerável, e o conserto é subir para 3.2.5 ou mais. Se estivesse em 3.3.0, estaria fora da faixa, ou seja, já corrigida. Em Python a ideia é a mesma: o aviso do PyPI dá a faixa e você confere a versão do seu requirements.txt ou do pip freeze.

aviso: qs-lite afetado em >= 3.0.0 < 3.2.5 faixa afetada versões 3.0.0 3.1.4 3.2.5 3.3.0 versão instalada: dentro, vulnerável corrige aqui
O aviso marca uma faixa afetada na reta das versões; a versão instalada cai dentro ou fora dela.

Aparece nestes desafios