[アップデート] Amazon CloudFront のセキュリティポリシーに「TLSv1.3_2025」が追加されました
いわさです。
Amazon CloudFront は TLS/SSL のセキュリティポリシーを選択することが出来ます。
想定されるクライアントやワークロードのセキュリティ要件に合わせてこのあたりを選択するのですが先日のアップデートで新しいセキュリティポリシーが追加されました。
マネジメントコンソールを確認してみると、これまではTLSv1.2_2021
が最新でしたが、今回のアップデートでTLSv1.3_2025
が追加されています。
今回新規ディストリビューションを作成した時の挙動や、追加されたポリシーの TLS 構成を確認してみたので紹介します。
新規作成時のデフォルトは引き続き TLSv1.2_2021
セキュリティポリシー選択画面上にも表記されていますが、本日時点ではTLSv1.2_2021
が引き続き「推奨」の設定値とされています。
実際に、新しい CloudFront ディストリビューションを作成してみましたが、デフォルトでTLSv1.2_2021
が設定されていることを確認しました。
通常はTLSv1.2_2021
を選択すれば良く、限られたケースでだけTLSv1.3_2025
を選択するような使い方になる感じです。
TLSv1.3_2025 は TLSv1.3 のみ許可される
ではその限られたケースがどういう時かというと、厳格に TLSv1.3 のみを許可し、TLSv1.2 以下の接続を拒否する場合です。
TLS はクライアントとサーバーが接続時にお互いの使用可能なバージョンや暗号スイート情報を交換し、何を使うかが決められます。
デフォルトのTLSv1.2_2021
は TLSv1.2 と TLSv1.3 をサポートしており、クライアントが TLSv1.3 をサポートしているようであれば TLSv1.3 で通信され、クライアントが TLSv1.3 を未サポートの場合は TLSv1.2 が使われるような動きになります。
sslscan
コマンドでTLSv1.2_2021
を設定したエンドポイントを調べてみると次のような結果を取得できます。
% sslscan https://hogecf.tak1wa.com/
Version: 2.1.3
OpenSSL 3.5.1 1 Jul 2025
Connected to 13.32.54.76
Testing SSL server hogecf.tak1wa.com on port 443 using SNI name hogecf.tak1wa.com
SSL/TLS Protocols:
SSLv2 disabled
SSLv3 disabled
TLSv1.0 disabled
TLSv1.1 disabled
TLSv1.2 enabled
TLSv1.3 enabled
TLS Fallback SCSV:
Server supports TLS Fallback SCSV
TLS renegotiation:
Session renegotiation not supported
TLS Compression:
OpenSSL version does not support compression
Rebuild with zlib1g-dev package for zlib support
Heartbleed:
TLSv1.3 not vulnerable to heartbleed
TLSv1.2 not vulnerable to heartbleed
Supported Server Cipher(s):
Preferred TLSv1.3 128 bits TLS_AES_128_GCM_SHA256 Curve 25519 DHE 253
Accepted TLSv1.3 256 bits TLS_AES_256_GCM_SHA384 Curve 25519 DHE 253
Accepted TLSv1.3 256 bits TLS_CHACHA20_POLY1305_SHA256 Curve 25519 DHE 253
Preferred TLSv1.2 128 bits ECDHE-RSA-AES128-GCM-SHA256 Curve 25519 DHE 253
Accepted TLSv1.2 256 bits ECDHE-RSA-AES256-GCM-SHA384 Curve 25519 DHE 253
Accepted TLSv1.2 256 bits ECDHE-RSA-CHACHA20-POLY1305 Curve 25519 DHE 253
Server Key Exchange Group(s):
TLSv1.3 128 bits secp256r1 (NIST P-256)
TLSv1.3 192 bits secp384r1 (NIST P-384)
TLSv1.3 128 bits x25519
TLSv1.2 128 bits secp256r1 (NIST P-256)
TLSv1.2 192 bits secp384r1 (NIST P-384)
TLSv1.2 128 bits x25519
SSL Certificate:
Signature Algorithm: sha256WithRSAEncryption
RSA Key Strength: 2048
Subject: *.tak1wa.com
Altnames: DNS:*.tak1wa.com
Issuer: Amazon RSA 2048 M03
Not valid before: Nov 24 00:00:00 2024 GMT
Not valid after: Dec 24 23:59:59 2025 GMT
TLSv1.1 以下は無効化されており、TLSv1.2 と TLSv1.3 のみが許可されています。
現在は一般的には TLSv1.1 以下は非推奨となっているため、一般的なセキュリティ要件に準拠したセキュリティポリシーと言えます。(厳密には TLSv1.2 の暗号スイートの中にも推奨/非推奨があるのだが、それらもある程度TLSv1.2_2021
では考慮されたものになっている)
では今回追加されたTLSv1.3_2025
も同じように確認してみましょう。
既存エンドポイントのセキュリティポリシーを変更してみます。
先ほどと同じようにsslscan
で調べてみると次のような結果となりました。
% sslscan https://hogecf.tak1wa.com/
Version: 2.1.3
OpenSSL 3.5.1 1 Jul 2025
Connected to 13.32.54.76
Testing SSL server hogecf.tak1wa.com on port 443 using SNI name hogecf.tak1wa.com
SSL/TLS Protocols:
SSLv2 disabled
SSLv3 disabled
TLSv1.0 disabled
TLSv1.1 disabled
TLSv1.2 disabled
TLSv1.3 enabled
TLS Fallback SCSV:
Server supports TLS Fallback SCSV
TLS renegotiation:
Session renegotiation not supported
TLS Compression:
OpenSSL version does not support compression
Rebuild with zlib1g-dev package for zlib support
Heartbleed:
TLSv1.3 not vulnerable to heartbleed
Supported Server Cipher(s):
Preferred TLSv1.3 128 bits TLS_AES_128_GCM_SHA256 Curve 25519 DHE 253
Accepted TLSv1.3 256 bits TLS_AES_256_GCM_SHA384 Curve 25519 DHE 253
Accepted TLSv1.3 256 bits TLS_CHACHA20_POLY1305_SHA256 Curve 25519 DHE 253
Server Key Exchange Group(s):
TLSv1.3 128 bits secp256r1 (NIST P-256)
TLSv1.3 192 bits secp384r1 (NIST P-384)
TLSv1.3 128 bits x25519
SSL Certificate:
Signature Algorithm: sha256WithRSAEncryption
RSA Key Strength: 2048
Subject: *.tak1wa.com
Altnames: DNS:*.tak1wa.com
Issuer: Amazon RSA 2048 M03
Not valid before: Nov 24 00:00:00 2024 GMT
Not valid after: Dec 24 23:59:59 2025 GMT
このセキュリティポリシーでは TLSv1.2 も無効化されており、TLSv1.3 のみ有効化されていますね。
このエンドポイントへ TLSv1.2 と TLSv1.3 でそれぞれ接続してみましょう。
% curl https://hogecf.tak1wa.com/ --tls-max 1.3
hoge
% curl https://hogecf.tak1wa.com/ --tls-max 1.2
curl: (35) TLS connect error: error:0A00042E:SSL routines::tlsv1 alert protocol version
クライアントの最大 TLS バージョンが TLSv1.3 では接続できましたが、TLSv1.2 までしか使えないクライアントの場合は接続に失敗しました。
さいごに
本日は Amazon CloudFront のセキュリティポリシーに「TLSv1.3_2025」が追加されたので確認してみました。
システム要件として TLSv1.3 のみ許容されるような場合は今回追加されたTLSv1.3_2025
を選択してみましょう。
なお、TLSv1.3 のみを許可した時の影響や AWS 上での TLS バージョンや暗号スイートのサポート状況は以前 JAWS の登壇機会を頂いた際に調べたことがありまして、よければこちらも見てください。
登壇した時の動画はこちらです。