CVE-2022-27782: TLS and SSH connection too eager reuse

Disclosed: 2022-05-11 12:40:19 By nyymi To curl
Medium
Vulnerability Details
## Summary: Curl fails to consider some security related options when reusing TLS connections. For example: - CURLOPT_SSL_OPTIONS - CURLOPT_PROXY_SSL_OPTIONS - CURLOPT_CRLFILE - CURLOPT_PROXY_CRLFILE As a result for example TLS connection with lower security (`CURLSSLOPT_ALLOW_BEAST`,` CURLSSLOPT_NO_REVOKE`) connection reused when it should no longer be. Also connection that has been authenticated perviously with `CURLSSLOPT_AUTO_CLIENT_CERT` might be reused for connections that should not be. ## Steps To Reproduce: 1. `(echo -ne "HTTP/1.1 200 OK\r\nContent-Length: 6\r\n\r\nHello\n"; sleep 5; echo -ne "HTTP/1.1 200 OK\r\nContent-Length: 6\r\n\r\nAgain\n") | openssl s_server -cert cert.pem -key privkey.pem -cert_chain chain.pem -accept 9443` 2. `curl -v --ssl-no-revoke --ssl-allow-beast https://targethost.tld:9443 -: https://targethost.tld:9443` Connections are made using the same reused connection even though security settings change. With curl built against openssl: 1. `curl http://cdp.geotrust.com/GeoTrustRSACA2018.crl | openssl crl -out testcrl.pem` 2. `curl -v https://curl.se -: --crlfile crlfile.pem https://curl.se` The crlfile.pem use should result in `curl: (60) SSL certificate problem: unable to get certificate CRL` but is ignored since previous connection is reused. With curl built against Schannel and revoked certificate: 1. `curl -v --ssl-no-revoke https://revoked.grc.com -: https://revoked.grc.com` Second connection will reuse the existing connection even though revocation check is no longer requested. ## Note: There may be more options that might have the similar issues. These were the most obvious I could see (ones having obvious security impact). ## Impact Wrong identity (client certificate) or TLS security options being used for subsequent connections to the same hosts.
Actions
View on HackerOne
Report Stats
  • Report ID: 1555796
  • State: Closed
  • Substate: resolved
  • Upvotes: 4
Share this report