What’s Vulnerable › Vulnerabilities

CVE-2019-1559: 0-byte record padding oracle

Description

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). Fixed in OpenSSL 1.0.2r (Affected 1.0.2-1.0.2q).

Affected products

How to fix

Upgrade to a fixed version: McAfee, LLC Data Exchange Layer (DXL) Broker 6.0.0; McAfee,LLC Threat Intelligence Exchange Server (TIE Server) 3.0.0; McAfee Web Gateway (MWG) 9.0.0; Node.js 6.17.0, 8.15.1; OpenSSL 1.0.2r. Check the vendor advisory for mitigations.

References

Get alerted when CVE-2019-1559 or the next vulnerability affects your stack