Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Absence of RUSTSEC advisories for Wasmtime security vulnerabilities #10344

Open
venkkatesh-sekar opened this issue Mar 6, 2025 · 7 comments
Open

Comments

@venkkatesh-sekar
Copy link

Currently, Wasmtime's security disclosure process includes an announcement via the security mailing list upon a patch release, along with a corresponding GitHub security advisory published on the disclosure date. While this process is comprehensive, it does not account for users who rely on tools other than Dependabot PRs for automatic vulnerability detection.

For instance, cargo-audit relies exclusively on the RUSTSEC advisory database to flag vulnerabilities, which has become the preferred method for automated detection in Rust. Hence, could we start considering publishing RUSTSEC advisories alongside GitHub security advisories as part of the standard disclosure process.

@bjorn3
Copy link
Contributor

bjorn3 commented Mar 6, 2025

The github security advisories db should import advisories from the rustsec db. As for the other way around I believe that is partially implemented but not actually running automatically yet. No clue about the current status of that work though.

@venkkatesh-sekar
Copy link
Author

venkkatesh-sekar commented Mar 6, 2025

As for the other way around I believe that is partially implemented but not actually running automatically yet. No clue about the current status of that work though.

I see, that would be great and solve a lot of manual work. I was considering alternatives to cargo-audit and looks like osv-scanner does combine both databases when scanning Cargo.lock files.

OTOH, do you see any blockers for publishing RUSTSEC for wasmtime?

@bjorn3
Copy link
Contributor

bjorn3 commented Mar 6, 2025

I'm not involved in the handling of Cranelift/Wasmtime security issues myself, so I don't know if there are any blockers.

alexcrichton added a commit to bytecodealliance/meetings that referenced this issue Mar 6, 2025
@alexcrichton
Copy link
Member

I've added this to our upcoming meeting agenda -- bytecodealliance/meetings#557

@bjorn3 would you happen to have a link to the work to auto-import to rustsec? I looked thorugh some existing advisories for Wasmtime in rustsec and it looks like they've all been manually imported so far, so I figured we'd probably have to keep doing that but if there's work to auto-import that'd also be neat.

@bjorn3
Copy link
Contributor

bjorn3 commented Mar 6, 2025

The discussion seems to be fragmented over a bunch of issues and PRs. One of them is rustsec/rustsec#656. Another is rustsec/advisory-db#1711.

alexcrichton added a commit to alexcrichton/advisory-db that referenced this issue Mar 17, 2025
[Wasmtime] recently got a [request] to have our security advisories
published on the RustSec database as well. We've got a few old
advisories on here but we haven't been keeping up-to-date with later
advisories. In lieu of automatic imports from GitHub to RustSec we
figured we'd in the interim manually fill in some fields.

In this PR I'm filing a security advisory for [GHSA-88xq-w8cq-xfg7]
which is a 3-year-old advisory at this point. This is to serve as an
example for future imports of Wasmtime advisories so my hope is to get
everything ok, copy this behavior for our other advisories that aren't
listed in RustSec, and then applying this process to future advisories.

[Wasmtime]: https://crates.io/crates/wasmtime
[request]: bytecodealliance/wasmtime#10344
[GHSA-88xq-w8cq-xfg7]: GHSA-88xq-w8cq-xfg7
@alexcrichton
Copy link
Member

Follow-up on this: we discussed this at the Wasmtime meeting last week and our conclusions were:

  • We'll add this to our security issue process going forward.
  • For now I'll open an issue about back-filling advisories.

I sent rustsec/advisory-db#2254 for backfilling a single advisory to double-check that the "mostly empty" report is ok for RustSec folks. If that's ok I'll send a PR to update documentation for our own runbook and point to that PR as an example advisory. I'll then file a follow-up issue for backfilling the existing adviories.

@alexcrichton
Copy link
Member

Hm the inactivity on rustsec/advisory-db#2254 is not necessarily inspiring confidence in hitching our process to theirs...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants