ArchLinux: 201903-6: lib32-openssl-1.0: information disclosure
Summary
A padding oracle has been found in OpenSSL versions prior to 1.0.2r. This issue does not impact OpenSSL 1.1.1 or 1.1.0. If an application encounters a fatal protocol error and then calls SSL_shutdown() twice (once to send a close_notify, and once to receive one) then OpenSSL can respond differently to the calling application if a 0 byte record is received with invalid padding compared to if a 0 byte record is received with an invalid MAC. If the application then behaves differently based on that in a way that is detectable to the remote peer, then this amounts to a padding oracle that could be used to decrypt data. In order for this to be exploitable "non-stitched" ciphersuites must be in use. Stitched ciphersuites are optimised implementations of certain commonly used ciphersuites. Also the application must call SSL_shutdown() twice even if a protocol error has occurred (applications should not do this but some do anyway). AEAD ciphersuites are not impacted.
Resolution
Upgrade to 1.0.2.r-1.
# pacman -Syu "lib32-openssl-1.0>=1.0.2.r-1"
The problem has been fixed upstream in version 1.0.2.r.
References
https://www.openssl.org/news/secadv/20190226.txt https://security.archlinux.org/CVE-2019-1559
Workaround
None.