Go version

1.23.4

Output of go env in your module/workspace:

N/A - Container-based (docker image) scan.

What did you do?

Anchore scans run periodically.

What did you see happen?

Vulnerability scanners (such as Anchore) are detecting GHSA-3xgq-45jj-v275/CVE-2024-21538 in cross-spawn 7.0.3. That dependency needs to be upgraded to 7.0.5 or higher. Thank you.

Note: This was reported as Issue 71114, but that was closed with not planned. It is not a duplicate according to issue search, so asking for an explanation.

What did you expect to see?

Clean scan results.

Comment From: gabyhelp

Related Issues

(Emoji vote if this was helpful or unhelpful; more detailed feedback welcome in this discussion.)

Comment From: dmitshur

This is the issue tracker for the Go project. What is "cross-spawn" in your report? If it's referring to https://www.npmjs.com/package/cross-spawn, the issue tracker for that seems to be https://github.com/moxystudio/node-cross-spawn/issues. If there's an issue in Go itself, please add more information so we can understand the problem. Thanks.

Comment From: dmitshur

I see it's a dependency in some of the golang.org/x repos:

https://cs.opensource.google/search?q=%22cross-spawn%22%20%227.0.3%22&ss=go

Comment From: seankhliao

This is pulled in from eslint and npm-run-all, both of which are development only dependencies for js/ts (as in, the scan results are just noise).

I do think it's unfortunate that web code is vendored into the main go repo, perhaps all the telemetry.go.dev things and related tooling setup should move into the x/telemetry/godev directory, which is already its own module. currently there's js code in x/telemetry/internal/content which is part of the parent module.

cc @golang/telemetry

Comment From: findleyr

CC @golang/tools-team (for pkgsite)

@seankhliao I agree that we should perhaps consider adding a submodule for x/telemetry/cmd/gotelemetry, so that the core telemetry library has no web dependencies.

EDIT: @rsc points out that we could achieve the same effect by simply moving the package.json into a subdirectory of the module root.

Comment From: pcreager23

Is it possible to get an estimated fix date? Thanks.

Comment From: pcreager23

Additional finding that just came to our attention: GHSA-3xgq-45jj-v275/CVE-2024-21538

Same scenario as above - fixed in cross-spawn 7.0.5.

Comment From: findleyr

Hi @pcreager23, where are these finding originating? What problems are they causing you?

It sounds like we can and should update our depenencies, and we will discuss timing for this in our regular triage meeting later today. However, I want to understand this problem better. What friction does a failed npm audit cause?

It seems like we need a (better) system in place to manage our development dependencies, but the design of that system depends on understanding the impact these dependencies have on the users of our libraries and applications.

Comment From: pcreager23

@findleyr Corporate environment: we run several scanners, some commercial, some home-brew. Many of these are mandated by Fed Gov compliance requirements. Anchore is one of these, for container scanning, and we have mandates that all vulnerabilities found must be solved or mitigated by a predetermined SLA. (Anchore uses grype and syft.)

In the case of transitive dependencies such as this, we must reach out to the developer (you) as the team can't upgrade cross-spawn directly since it's contained within Golang.