web-dev-qa-db-ja.com

cURLでSSLv3を無効にしますか?

CloudFlareでホストされているウェブサイトへのcURLを使用した接続に問題があります。 HTTPSで(curl -v https://www.xxxxxx.comを使用して)Webサイトに接続しようとすると、次のように表示されます。

* About to connect() to www.xxxxxx.com port 443 (#0)
*   Trying 2400:cb00:2048:1::681c:116e...
* Connected to www.xxxxxx.com (2400:cb00:2048:1::681c:116e) port 443 (#0)
* Initializing NSS with certpath: sql:/etc/pki/nssdb
*   CAfile: /etc/pki/tls/certs/ca-bundle.crt
  CApath: none
* NSS error -12286 (SSL_ERROR_NO_CYPHER_OVERLAP)
* Cannot communicate securely with peer: no common encryption algorithm(s).
* Error in TLS handshake, trying SSLv3...
> GET / HTTP/1.1
> User-Agent: curl/7.29.0
> Host: www.xxxxxx.com
> Accept: */*
>
* Connection died, retrying a fresh connect
* Closing connection 0
* Issue another request to this URL: 'https://www.xxxxxx.com'
* About to connect() to www.xxxxxx.com port 443 (#1)
*   Trying 2400:cb00:2048:1::681c:116e...
* Connected to www.xxxxxx.com (2400:cb00:2048:1::681c:116e) port 443 (#1)
* TLS disabled due to previous handshake failure
*   CAfile: /etc/pki/tls/certs/ca-bundle.crt
  CApath: none
* NSS error -12286 (SSL_ERROR_NO_CYPHER_OVERLAP)
* Cannot communicate securely with peer: no common encryption algorithm(s).
* Closing connection 1
curl: (35) Cannot communicate securely with peer: no common encryption algorithm(s).

私はこの問題についてCloudFlareに連絡しましたが、cURLがSSLv3を使用して接続しようとしていて、POODLEの脆弱性のためにそれを無効にしたためと彼らは言っています。 FreeBSD 10ではcURL v7.38.0に問題なく接続できますが、CentOS 6.5のcURL v7.29.0では接続できません。

SSLv3に接続しようとしていることが原因である場合、cURLでSSLv3を無効にするにはどうすればよいですか?それとも別のものですか?

7
ub3rst4r

この問題は、cURLのバージョンがECC 256ビットSSL証明書とECDSA署名アルゴリズム(CloudFlareで使用される)をサポートしていないことが原因であるようです。次のコマンドを実行すると、cURLのバージョンがこの暗号化をサポートしているかどうかをテストできます。

curl -1IsS --ciphers ecdhe_ecdsa_aes_128_sha https://sslspdy.com

以下を取得した場合、cURLは古くなっています。

curl: (59) Unknown cipher in list: ecdhe_ecdsa_aes_128_sha

それ以外の場合、接続してエラーが表示されなければ、最新の状態です。

CentOSはアップデートがパッケージに適用される前に徹底的にスクリーニングするように見えるため、いつ修正されるかはわかりません。 [〜#〜] only [〜#〜]これを回避する方法は、cURLを更新することで、-kまたは--insecureを渡しても機能しません。

8
ub3rst4r