BouncyCastle TLS prior to version 1.0.3, when configured to use the JCE (Java Cryptography Extension) for cryptographic functions, provides a weak Bleichenbacher oracle when any TLS cipher suite using RSA key exchange is negotiated. An attacker can recover the private key from a vulnerable application. This vulnerability is referred to as "ROBOT."
[
{
"source": "https://github.com/bcgit/bc-java/commit/a00b684465b38d722ca9a3543b8af8568e6bad5c",
"signature_version": "v1",
"deprecated": false,
"id": "CVE-2017-13098-75c5c872",
"target": {
"function": "safeDecryptPreMasterSecret",
"file": "tls/src/main/java/org/bouncycastle/tls/crypto/impl/jcajce/JceDefaultTlsCredentialedDecryptor.java"
},
"signature_type": "Function",
"digest": {
"length": 827.0,
"function_hash": "289149566325291897423684006854774195716"
}
},
{
"source": "https://github.com/bcgit/bc-java/commit/a00b684465b38d722ca9a3543b8af8568e6bad5c",
"signature_version": "v1",
"deprecated": false,
"id": "CVE-2017-13098-81c60bc3",
"target": {
"file": "tls/src/main/java/org/bouncycastle/tls/crypto/impl/jcajce/JceDefaultTlsCredentialedDecryptor.java"
},
"signature_type": "Line",
"digest": {
"threshold": 0.9,
"line_hashes": [
"305964000066746416963441673159454415214",
"330482452789340571768173095412697713195",
"196419259948231920681181642091173369616",
"51116576605919566978153007323722598930"
]
}
}
]