Cente障害情報

複数の証明書を送ってくるサーバにTLS1.3で接続できない場合がある

発行番号: 006-0012
Rev: 第1版
発行日: 2020/10/16
題名: 複数の証明書を送ってくるサーバにTLS1.3で接続できない場合がある

適用製品
・Cente Compact SSLc Ver.1.50 – Ver.1.52

【該当するユーザ環境】
Cente Compact SSLc Ver.1.50 – Ver.1.52でTLS1.3を使用しているユーザ。

【障害内容】
TLS1.3で接続してサーバが複数の証明書を送ってくる場合に本障害が発生する場合があります。
サーバからの一つ目の証明書の検証が失敗して、二つ目の証明書の検証をしようとした際、証明書の内容に関わらず必ず検証に失敗していました。
ただし以下のいずれかの場合は問題が発生しません(または問題が発生しても接続に失敗しません)。
・TLS1.3で接続しない場合。
・一つ目の証明書で検証が成功した場合。
・証明書検証モード設定「ssl_set_verify_mode()」でSSL_VERIFY_NONEを設定している場合。
・証明書検証モード設定「ssl_set_verify_mode()」でSSL_VERIFY_OPTIONALを設定している場合。
 (ただし証明書検証結果取得「ssl_get_verify_result()」の戻り値がSSLERR_CERT_BAD_FORMATとなります。)

【発生理由】
サーバ証明書の検証は一つ目の証明書から順番に行われ検証が成功した時点で検証完了となります。
一つ目の証明書の検証が失敗した場合、二つ目の証明書の検証を行いますが、このときの証明書チェインのパース処理に間違いがあり二つ目の証明書の検証が失敗となっていました。

【回避方法】
ソースコードの修正が必要です。
改変箇所については、営業担当またはsupport_XXXatmarkXXX_cente.jpまでお問い合わせください(_XXXatmarkXXX_は@にしてください)。

サーバ証明書チェインを正しく送信できない

発行番号: Cente012-0001
Rev: 第1版
発行日: 2020/01/10
題名 サーバ証明書チェインを正しく送信できない

【該当するユーザ環境】
サーバ証明書1枚だけではなく、サーバ証明書・それに署名するCA証明書・その上位のCA証明書のように、複数の証明書(以下サーバ証明書チェイン)をクライアントへ送信するユーザ。
サーバ証明書1枚のみを送信する場合は、該当しません。

【障害内容】
サーバ証明書チェインの長さを不正な内容で送信していました。
それを受信したSSLクライアントの動作は、クライアントの仕様によります。一般には、不正な内容とみなして切断すると思われます。

【発生理由】
証明書は、長さと証明書自体を1枚1枚個別に送信する必要がありますが、複数の証明書をまとめて1つの長さにして送信していました。

【回避方法】
以下の2点の修正が必要です。
1. ソースコードの修正
2. サーバ証明書チェインデータの修正
なお、サーバ証明書1枚のみを送信する場合は、問題ありません。

詳細については、営業担当またはsupport_XXXatmarkXXX_cente.jpまでお問い合わせください(_XXXatmarkXXX_は@にしてください)。
(2020/10/01 発行番号の誤り(008-0001)を、012-0001に修正しました)

Cente Compact SSLc

・クライアント認証に対応
クライアント認証に対応した。
・セッション再開に対応
Session IDによるセッション再開、TLS Session Ticket拡張(RFC5077)によるセッション再開に対応した。
・TLSv1.0のパディングチェック
TLSv1.0で、受信データのパディングの値をチェックするようにした。
サーバによって接続、再ネゴシエーションが失敗する場合があったのを修正
server helloに未サポートのTLS拡張が含まれていた場合に接続、再ネゴシエーションに失敗することがあったのを修正した。(Cente障害情報006-0010)
・AES-GCMまたはchacha20-poly1305での再ネゴシエーション失敗を修正
暗号スイートにAES-GCM、chacha20-poly1305を使用している場合に再ネゴシエーションに失敗するのを修正した。(Cente障害情報006-0011)

Cente Compact SSLc

・Server Name Indicationに対応
Server Name Indication拡張に対応した。
・暗号スイートを追加
下記のアルゴリズムを使用する暗号スイートに対応した(別途Compact Crypto Plusパッケージが必要)。
 – 暗号化アルゴリズム: AES-GCM, ChaCha20-Poly1305
 – 鍵交換方式: DHE, ECDHE
 – 署名アルゴリズム: SHA384_RSA, SHA512_RSA, SHA1_DSA, SHA256_DSA, SHA384_DSA, SHA512_DSA, SHA1_ECDSA, SHA256_ECDSA, SHA384_ECDSA, SHA512_ECDSA
・DTLSに非対応
バージョンアップに伴い、DTLSオプションパッケージとの互換性がなくなった。
・コードの整形
行末の余分なスペースを削除した。
 

 

Cente Compact SSLc

・Server Name Indicationに対応

Server Name Indication拡張に対応した。

・暗号スイートを追加

下記のアルゴリズムを使用する暗号スイートに対応した(別途Compact Crypto Plusパッケージが必要)。

暗号化アルゴリズム…AES-GCM, ChaCha20-Poly1305

鍵交換方式…DHE, ECDHE

署名アルゴリズム…SHA384_RSA, SHA512_RSA, SHA1_DSA, SHA256_DSA, SHA384_DSA, SHA512_DSA, SHA1_ECDSA, SHA256_ECDSA, SHA384_ECDSA, SHA512_ECDSA

・DTLSに非対応

バージョンアップに伴い、DTLSオプションパッケージとの互換性がなくなった。

・コードの整形

行末の余分なスペースを削除した。

Cente Compact SSLc

・Server Name Indicationに対応

Server Name Indication拡張に対応した。

・暗号スイートを追加

下記のアルゴリズムを使用する暗号スイートに対応した(別途Compact Crypto Plusパッケージが必要)。

暗号化アルゴリズム AES-GCM, ChaCha20-Poly1305

鍵交換方式DHE, ECDHE

署名アルゴリズムSHA384_RSA, SHA512_RSA, SHA1_DSA, SHA256_DSA, SHA384_DSA, SHA512_DSA, SHA1_ECDSA, SHA256_ECDSA, SHA384_ECDSA, SHA512_ECDSA

・DTLSに非対応

バージョンアップに伴い、DTLSオプションパッケージとの互換性がなくなった。

・コードの整形

行末の余分なスペースを削除した。

Page 1 of 5

Social Media