| Package Name | Ecosystem | Vulnerable Versions | First Patched Version |
|---|---|---|---|
| com.google.guava:guava |
| maven |
| >= 1.0, < 32.0.0-android |
| 32.0.0-android |
The analysis is based on the provided commit feb83a1c8fd2e7670b244d5afd23cba5aca43284, which addresses the insecure use of temporary directories.
The vulnerability description specifically mentions FileBackedOutputStream. The commit modifies this class and Files.createTempDir() to use a new, secure TempFileCreator.
com.google.common.io.FileBackedOutputStream:
<init>(int) and <init>(int, boolean)) are identified as vulnerable because they initialized the stream in a way that would lead to insecure temporary file creation. They previously passed null as the parentDirectory to an internal mechanism, causing the update(int) method to use File.createTempFile with the system's default temporary directory.update(int) method is identified because it contained the actual call to File.createTempFile(..., parentDirectory), where parentDirectory could be null, leading to the insecure behavior.com.google.common.io.Files.createTempDir():
java.io.tmpdir) without ensuring appropriate, restricted permissions.The patch replaces these vulnerable behaviors by delegating temporary file and directory creation to TempFileCreator.INSTANCE, which is designed to create them securely or fail if secure creation is not possible. The identified functions are those that contained the insecure logic before this fix.
KEV Misses 88% of Exploited CVEs- Get the report