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

Shaded Guava 20.0 dependency vulnerable to CVE-2018-10237 #799

Closed
wrprice opened this issue Jan 9, 2019 · 6 comments
Closed

Shaded Guava 20.0 dependency vulnerable to CVE-2018-10237 #799

wrprice opened this issue Jan 9, 2019 · 6 comments
Assignees
Milestone

Comments

@wrprice
Copy link

wrprice commented Jan 9, 2019

Expected behavior

Bundled (shaded) dependencies should not have any known security defects. Specifically, the shaded Guava library should be at least version 24.1.1 or 25.0, or newer.

Actual behavior

Guava 11.0 through 24.1 (inclusive) contain two classes that, if exploited via Java and/or GWT Serialization, can lead to unbounded memory allocation. This vulnerability is covered by CVE-2018-10237.

The master branch of ApplicationInsights Java library still depends on Guava 20.0 and shades within the published applicationinsights-core JAR. (I have not checked other JARs from this library.) This version of Guava has been included since at least version 2.1.2 of this library, and likely earlier versions.

@dhaval24
Copy link
Contributor

dhaval24 commented Jan 9, 2019

@wrprice thanks for creating this issue. @littleaj lets prioritize this.

@dhaval24
Copy link
Contributor

dhaval24 commented Jan 9, 2019

The issue with moving to guava 24 or higher is that it doesn't support Java 7. In this case only possible thing is to get rid of this dependency alltogether unless there is an alternative.

@wrprice
Copy link
Author

wrprice commented Jan 9, 2019

If you're certain you don't use the two specific classes affected by the CVE, you could exclude them from the shading. That would remove the ability to exploit via this library, though this library may still show up in scans by the OWASP dependency check tool, for example. In that case, posting a known-issue would help clarify to users that (after excluding the classes) it's a false-positive.

Edited to add: removing entirely would probably be preferable

@littleaj
Copy link
Contributor

@wrprice The current plan is to remove the dependnecy. It's only for convienience and has caused some other issues for us before. IMO, the best course of action is to remove it.

@littleaj littleaj added this to the 2.3.1 milestone Jan 10, 2019
@littleaj littleaj self-assigned this Jan 10, 2019
@wrprice
Copy link
Author

wrprice commented Feb 6, 2019

@littleaj not trying to be a pest, and I appreciate the swiftness of the code change so far, but do you have an ETA for releasing 2.3.1 with this fix?

@littleaj
Copy link
Contributor

littleaj commented Feb 7, 2019

@wrprice not a problem. The release is planned for this week.

@ghost ghost locked as resolved and limited conversation to collaborators Jul 20, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants