CVE-2017-3737 - Read, write after SSL object in error state. (BSA-2018-527).

Brocade Fabric OS

2 more products


20 March 2023

23 January 2018







Security Advisory ID: BSA-2018-527

Component: OpenSSL

Revision : 3.0: Final

OpenSSL 1.0.2 (starting from version 1.0.2b) introduced an "error state" mechanism. The intent was that if a fatal error occurred during a handshake, then OpenSSL would move into the error state and would immediately fail if you attempted to continue the handshake. This works as designed for the explicit handshake functions (SSL_do_handshake(), SSL_accept() and SSL_connect()), however due to a bug it does not work correctly if SSL_read() or SSL_write() is called directly. In that scenario, if the handshake fails, a fatal error will be returned in the initial function call. If SSL_read()/SSL_write() is subsequently called by the application for the same SSL object, then it will succeed, and the data is passed without being decrypted/encrypted directly from the SSL/TLS record layer. In order to exploit this issue, an application bug would have to be present that resulted in a call to SSL_read()/SSL_write() being issued after having already received a fatal error. OpenSSL version 1.0.2b-1.0.2m are affected. Fixed in OpenSSL 1.0.2n. OpenSSL 1.1.0 is not affected.

Affected Products
Security updates have been provided in Brocade Fabric OS versions 8.2.2,8.2.1c,8.1.2h, and Ficon Patches 8.1.2a7 8.2.0a4. This CVE is not applicable for 7.4.x versions.

Products Confirmed Not Vulnerable
Brocade Manageability Products are Not affected by this vulnerability.

Revision History

Version Change Date
1.0 Initial Publication  Jan 22, 2018
2.0 Updated with all releases September 20, 2019
3.0 updated changing CVE-ID Dec 9, 2022