Description
The darwinssl_connect_step1 function in lib/vtls/curl_darwinssl.c in libcurl 7.31.0 through 7.39.0, when using the DarwinSSL (aka SecureTransport) back-end for TLS, does not check if a cached TLS session validated the certificate when reusing the session, which allows man-in-the-middle attackers to spoof servers via a crafted certificate.
References
- APPLE-SA-2015-08-13-2 vendor-advisory
- http://curl.haxx.se/docs/adv_20150108A.html
- http://kb.juniper.net/InfoCenter/index?page=content&id=JSA10743
- https://support.apple.com/kb/HT205031
- GLSA-201701-47 vendor-advisory
- 61925 third-party-advisory