Hacktoberfest 2026: as issues que os mantenedores marcaram para outubro, abertas e boas para iniciantes. Ver issues do Hacktoberfest

OSV parser drops all crates.io affected entries because the ecosystem mapping uses cargo

Aberta Para iniciantes
#2,485 1 comentário 0 reações 0 responsáveis Ver no GitHub

Mantenedores costumam responder em até 1 dia

@Ashutosh-Panda2004 já está trabalhando nisso.

Desde 27/10/2026.

  • #2486 de @Ashutosh-Panda2004 — aberto

Avaliação

Dificuldade
2/5
Tempo estimado
1-3 horas
Facilidade para iniciantes
76/100
Tipo de issue
Bug
Clareza
Claramente especificada
Status de atividade
Ativa
Stack de tecnologia
python
Domínio
security

Direção de pesquisa

Comece em vulnerabilities/importers/osv.py e examine PURL_TYPE_BY_OSV_ECOSYSTEM e a busca do ecossistema OSV descrita na issue. Adicione cobertura para um aviso de segurança do crates.io, usando o exemplo serde como referência. O trabalho estará concluído quando as entradas do crates.io gerarem uma URL de pacote cargo com a versão corrigida e a chave cargo existente continuar funcionando.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

I found that every crates.io advisory is silently dropped by the OSV parser.

In vulnerabilities/importers/osv.py, the PURL_TYPE_BY_OSV_ECOSYSTEM mapping is keyed by "cargo", but the ecosystem name in OSV data is "crates.io". The lookup lowercases the ecosystem string and finds no match for crates.io, so no package URL is built for the entry and the affected entry is skipped entirely.

I ran the parser on OSV advisories for serde and got:

F) ecosystem "crates.io", fixed version 1.0.0
   -> []                                   (dropped)
G) ecosystem "Cargo" (not the real OSV ecosystem name), fixed version 1.0.0
   -> pkg:cargo/serde with fixed 1.0.0     (works)

So the downstream path works end to end; only the ecosystem name in the mapping is wrong. This also means the cargo support that GithubOSVImporter.supported_ecosystems advertises never actually happens for real OSV data.

The fix I have in mind is to add a "crates.io": "cargo" entry to PURL_TYPE_BY_OSV_ECOSYSTEM, keeping the existing "cargo" key. Happy to raise a PR if this approach sounds right.

Linguagem predominante
Python
Estrelas
716
Forks
347
Merge médio
12h 15min
PRs com merge (30d)
9

Preparar o ambiente

  • Inclui um Dockerfile ou arquivo Docker Compose
  • Sem modelo de pull request
  • Sem guia de contribuição

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de aboutcode-org/vulnerablecode

Todas as issues de aboutcode-org/vulnerablecode

Issues semelhantes

Mais issues de Python

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.