OSV parser drops all crates.io affected entries because the ecosystem mapping uses cargo
Maintainer antworten meist innerhalb von 1 Tag
Bewertung
- Schwierigkeit
- 2/5
- Geschätzter Aufwand
- 1-3 Stunden
- Anfängerfreundlichkeit
- 76/100
Rechercherichtung
Beginne in vulnerabilities/importers/osv.py und prüfe PURL_TYPE_BY_OSV_ECOSYSTEM sowie die im Issue beschriebene OSV-Ecosystem-Zuordnung. Ergänze eine Abdeckung für einen crates.io-Sicherheitshinweis und orientiere dich dabei am serde-Beispiel. Fertig ist die Änderung, wenn Einträge von crates.io eine cargo-Package-URL mit der festen Version erzeugen und der vorhandene cargo-Schlüssel weiterhin funktioniert.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
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.
- Vorherrschende Sprache
- Python
- Sterne
- 716
- Forks
- 347
- Ø Merge
- 12 Std. 15 Min.
- Gemergte PRs (30 T.)
- 9
Entwicklungsumgebung
- Enthält ein Dockerfile oder eine Docker-Compose-Datei
- Keine Pull-Request-Vorlage
- Kein Beitragsleitfaden
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus aboutcode-org/vulnerablecode
-
Docker Compose setup fails on wait-for-it host web:8000 and missing runtime .envEvtl. vergeben @Anurag-S1ngh hat das vor 6 Tagen übernommen. Offen
Schwierigkeit 2/5 Ein halber Tag Anfängerfreundlichkeit 77/100
aboutcode-org/vulnerablecode#2477 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
OVAL parser corrupts version bounds when the epoch is 10, 20 or the version contains "0:"Evtl. vergeben @Ashutosh-Panda2004 hat das vor 3 Tagen übernommen. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
aboutcode-org/vulnerablecode#2474 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 86/100
aboutcode-org/vulnerablecode#2426 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Get NuGet package versions from federated PURL version data in https://github.com/aboutcode-data/Evtl. wieder frei @Anshi321 hat das vor 25 Tagen übernommen, und es ist kein Pull Request offen. Offenbug data-quality
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
aboutcode-org/vulnerablecode#2418 · 4 Kommentare ·
Maintainer antworten meist innerhalb von 1 Tag
-
We do not collect the affected range for Gitlab advisoriesEvtl. vergeben @akashrajeev hat das vor 12 Tagen übernommen. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 70/100
aboutcode-org/vulnerablecode#2412 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in aboutcode-org/vulnerablecode
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
Maintainer antworten meist innerhalb von 2 Tagen
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 86/100
-
Validate finite output clamping limits in StepPredictor.prepare_clamping_params to prevent silent NaN/Inf propagationEvtl. vergeben @muskan-creates352 hat das heute übernommen. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 84/100
mllam/neural-lam#848 ·
Maintainer antworten meist innerhalb von 2 Tagen
-
infra
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 88/100
fab-geocommuns/RNB-coeur#1166 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
deepspeedai/DeepSpeed#8951 ·
Maintainer antworten meist innerhalb von 2 Tagen