CVE-2020-8908
temp directory creation vulnerability in guava (Maven)

temp directory creation No known exploit Fixable By Resolved Security

What is CVE-2020-8908 About?

This vulnerability in Guava allows for insecure temporary directory creation, potentially enabling attackers with local machine access to view sensitive data. The impact is significant as it can lead to information disclosure. Exploitation requires local access but otherwise appears straightforward due to default insecure permissions.

Affected Software

com.google.guava:guava <32.0.0-android

Technical Details

The vulnerability resides in the com.google.common.io.Files.createTempDir() method within Guava versions prior to 32.0.0. When this method is called, it creates a temporary directory. The issue stems from the default permissions assigned to this newly created directory, which typically default to standard Unix-like /tmp permissions. These permissions are often too broad, allowing other local users or processes on the same machine to access the contents of the temporary directory. An attacker with local access can therefore read sensitive data written into these directories, leading to information disclosure. The mechanism involves the application using this function to handle sensitive data, while the OS assigns world-readable permissions by default to the created directory.

What is the Impact of CVE-2020-8908?

Successful exploitation may allow attackers to bypass intended data isolation, read sensitive information stored in insecurely created temporary directories, and gain unauthorized access to data.

What is the Exploitability of CVE-2020-8908?

Exploitation requires local access to the machine running the vulnerable Guava application. No specific authentication or privilege requirements are explicitly stated beyond having sufficient access to interact with the local filesystem, suggesting that a standard user or an attacker who has already gained initial access could exploit this. The complexity is low as it leverages default insecure file permissions. Special conditions include the application actively using the createTempDir() method to store data that an attacker wishes to access. The risk factors increase if sensitive information is frequently processed and stored using this vulnerable method on multi-user systems.

What are the Known Public Exploits?

PoC Author Link Commentary
No known exploits

What are the Available Fixes for CVE-2020-8908?

A Fix by Resolved Security Exists!

About the Fix from Resolved Security

None

Available Upgrade Options

  • com.google.guava:guava
    • <32.0.0-android → Upgrade to 32.0.0-android

Struggling with dependency upgrades?

See how Resolved Security's drop-in replacements make it simple.

Book a demo

Additional Resources

What are Similar Vulnerabilities to CVE-2020-8908?

Similar Vulnerabilities: CVE-2017-1000366 , CVE-2016-1000027 , CVE-2011-3093 , CVE-2014-0466 , CVE-2019-14275