Looking at the structure of https://packages.wolfi.dev/os/security.json or chainguard security.json it seems that CVEs are only published for versions where there is a fix available.
Is my understanding correct that grype won’t reflect these CVEs? This also holds true for when status is one of Under investigation, Pending upstream fix or Fix not planned as seen on chainguard advisories.
Additionally, for package types that are covered by GitHub Security Advisories (for example, if the APK package includes a Ruby gem or Python package), Grype will search GitHub security advisory data for vulnerabilities about those packages.
Yes for the most part, just one more followup question how does CPE based matching work for custom chainguard / wolfi packages? Like go-1.21 is a custom wolfi package, how does grype know the CPE to match for it?
If you run Syft on the image containing the artifact in question (with JSON output format, e.g. syft <image-name> -o json), it will show you the CPEs that it has generated or otherwise found for the package. These are the CPEs that Grype will use to match against.