A temp directory creation vulnerability exists in all versions of Guava, allowing an attacker with access to the machine to potentially access data in a temporary directory created by the Guava API com.google.common.io.Files.createTempDir(). By default, on unix-like systems, the created directory is world-readable (readable by an attacker with access to the system). The method in question has been marked @Deprecated in versions 30.0 and later and should not be used. For Android developers, we recommend choosing a temporary directory API provided by Android, such as context.getCacheDir(). For other Java developers, we recommend migrating to the Java 7 API java.nio.file.Files.createTempDirectory() which explicitly configures permissions of 700, or configuring the Java runtime's java.io.tmpdir system property to point to a location whose permissions are appropriately configured.
{
"versions": [
{
"introduced": "0"
},
{
"fixed": "32.0.0"
},
{
"introduced": "16.0"
},
{
"last_affected": "19.0"
}
]
}{
"versions": [
{
"introduced": "0"
},
{
"fixed": "1.11.4"
},
{
"introduced": "0"
},
{
"last_affected": "1.2.1"
}
]
}"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2020-8908.json"
[
{
"events": [
{
"introduced": "0"
},
{
"last_affected": "11.3.2"
}
]
},
{
"events": [
{
"introduced": "0"
},
{
"last_affected": "12.0.0.4.0"
}
]
},
{
"events": [
{
"introduced": "0"
},
{
"last_affected": "12.0.0.5.0"
}
]
},
{
"events": [
{
"introduced": "0"
},
{
"last_affected": "12.2.1.3.0"
}
]
},
{
"events": [
{
"introduced": "0"
},
{
"last_affected": "12.2.1.4.0"
}
]
},
{
"events": [
{
"introduced": "0"
},
{
"fixed": "20.3"
}
]
},
{
"events": [
{
"introduced": "0"
},
{
"last_affected": "8.57"
}
]
},
{
"events": [
{
"introduced": "0"
},
{
"last_affected": "8.58"
}
]
},
{
"events": [
{
"introduced": "0"
},
{
"last_affected": "8.59"
}
]
},
{
"events": [
{
"introduced": "0"
},
{
"last_affected": "14.1.1.0.0"
}
]
},
{
"events": [
{
"introduced": "0"
},
{
"last_affected": "1.14.0"
}
]
},
{
"events": [
{
"introduced": "17.7"
},
{
"last_affected": "17.12"
}
]
},
{
"events": [
{
"introduced": "0"
},
{
"last_affected": "18.8"
}
]
},
{
"events": [
{
"introduced": "0"
},
{
"last_affected": "19.12"
}
]
},
{
"events": [
{
"introduced": "0"
},
{
"last_affected": "20.12"
}
]
},
{
"events": [
{
"introduced": "0"
},
{
"last_affected": "21.12"
}
]
}
]
[
{
"signature_version": "v1",
"target": {
"file": "guava/src/com/google/common/io/Files.java"
},
"source": "https://github.com/google/guava/commit/fec0dbc4634006a6162cfd4d0d09c962073ddf40",
"deprecated": false,
"digest": {
"line_hashes": [
"244004072759715381362783025308972603407",
"191696127954200063996670176044108409736",
"178977789205042937699363365843067219663",
"57691104357535497419766474869340073891"
],
"threshold": 0.9
},
"id": "CVE-2020-8908-198203f0",
"signature_type": "Line"
},
{
"signature_version": "v1",
"target": {
"file": "android/guava/src/com/google/common/io/Files.java"
},
"source": "https://github.com/google/guava/commit/fec0dbc4634006a6162cfd4d0d09c962073ddf40",
"deprecated": false,
"digest": {
"line_hashes": [
"244004072759715381362783025308972603407",
"191696127954200063996670176044108409736",
"178977789205042937699363365843067219663",
"57691104357535497419766474869340073891"
],
"threshold": 0.9
},
"id": "CVE-2020-8908-d54d1950",
"signature_type": "Line"
}
]