Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

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

Đang mở Phù hợp với người mới
#2,485 1 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

@Ashutosh-Panda2004 đang làm issue này rồi.

Từ ngày 27/10/2026.

  • #2486 của @Ashutosh-Panda2004 — đang mở

Đánh giá

Độ khó
2/5
Thời gian dự kiến
1-3 giờ
Mức phù hợp với người mới
76/100
Loại issue
Lỗi
Độ rõ ràng
Đặc tả rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
python
Lĩnh vực
security

Hướng nghiên cứu

Bắt đầu từ vulnerabilities/importers/osv.py và kiểm tra PURL_TYPE_BY_OSV_ECOSYSTEM cùng phần tra cứu hệ sinh thái OSV được mô tả trong issue. Bổ sung kiểm thử cho một cảnh báo bảo mật của crates.io, lấy ví dụ serde làm hướng dẫn. Hoàn tất khi các mục crates.io tạo ra URL gói cargo với phiên bản đã sửa và khóa cargo hiện có vẫn hoạt động.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

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.

Ngôn ngữ chính
Python
Star
716
Fork
347
Merge trung bình
12 giờ 15 phút
Pull request đã merge (30 ngày)
9

Chuẩn bị môi trường

  • Có Dockerfile hoặc tệp Docker Compose
  • Không có mẫu pull request
  • Không có hướng dẫn đóng góp

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của aboutcode-org/vulnerablecode

Tất cả issue của aboutcode-org/vulnerablecode

Issue tương tự

Thêm issue về Python

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.