Fix TROVE-2017-011: An attacker can make tor ask for a password
``` TROVE-2017-011: An attacker can make Tor ask for a password SEVERITY: High ALSO TRACKED AS: OSS-Fuzz testcase 6360145429790720, CVE-2017-8821 CREDIT: This was found by OSS-Fuzz. SUMMARY: All over our code, we accept parse RSA public keys in the "PEM" format, such as: -----BEGIN RSA PUBLIC KEY----- SXQncyBjb29sIHRoYXQgeW91IHdlcmUgY29uY2VybmVkIGVub3VnaCB0byBjaGVj aywgYnV0IHRoZXJlIGlzIGluIGZhY3Qgbm8gc2VjcmV0IGluZm9ybWF0aW9uIGhl cmUuICBUaGlzIHNwYWNlIGludGVudGlvbmFsbHkgbGVmdCBibGFuay4=\n -----END RSA PUBLIC KEY----- But if you pass OpenSSL a public key that's suitably constructed, it will ask for a password. This applies to public keys as well as private keys! If this "key" is used in a microdescriptor, an onion service descriptor, a relay or bridge descriptor, or anywhere, then OpenSSL will pause, and ask for a passphrase. This blocks Tor, causing a denial of service attack. If it causes an onion service or busy client to block, this could aid in traffic analysis. Tors that are running as a daemon (without a terminal) or inside another process may not be vulnerable -- it depends on OpenSSL's behavior when it tries to ask for a password. FIX: Everyone affected should upgrade to one of the releases with the fix for this issue: 0.2.5.16, 0.2.8.17, 0.2.9.14, 0.3.0.13, 0.3.1.9, or 0.3.2.6-alpha. ```
issue