cadence icon indicating copy to clipboard operation
cadence copied to clipboard

Go Crypto dependency has CVE-2020-29652

Open WToma opened this issue 4 years ago • 2 comments

Version of Cadence server, and client(which language) This is very important to root cause bugs.

  • Server version: 0.23.2
  • Client version: N/A
  • Client langauge: N/A

Describe the bug https://nvd.nist.gov/vuln/detail/CVE-2020-29652: "A nil pointer dereference in the golang.org/x/crypto/ssh component through v0.0.0-20201203163018-be400aefbc4c for Go allows remote attackers to cause a denial of service against SSH servers." It doesn't look like Cadence has a direct dependency on that package, but several different versions are included, all of those vulnerable: https://github.com/uber/cadence/blob/028c444/go.sum#L509-L518

That said I don't think this is directly exploitable. So fixing this is just more for defense-in-depth and to have our automated vulnerability scanner happy.

To Reproduce Is the issue reproducible?

  • Yes

Steps to reproduce the behavior: We used the Twistlock vulnerability scanner on the server docker image. Evidence that the vulnerable versions are used are here: https://github.com/uber/cadence/blob/028c444/go.sum#L509-L518.

Expected behavior I think to verify that this is fixed, we can just look for golang.org/x/crypto in go.sum, and verify that the version is v0.0.0-20201203163018 or above.

WToma avatar Feb 04 '22 18:02 WToma

I'm happy to help this move forward! However I don't have enough experience with go modules. What's the way to inspect the dependency chain to find where we're pulling in the different versions?

WToma avatar Feb 04 '22 18:02 WToma

is this why my import gone red today? I couldn't find the library, and it was in my local repro yesterday. forgot to mention that redownloading worked fine.

Ugoivy avatar Feb 05 '22 13:02 Ugoivy