MicrosoftはTLS 1.0と1.1を、WindowsのOSレベルで既定で無効化することを発表しました。まずは、2023年9月のWindows 11 Insider Previewで実施し、その後、サポートされるWindowsのリリースビルドに対して実施対象が広げられる予定です。
Microsoftは2023年8月1日(米国時間)、「Windowsクライアントの非推奨の機能」のページを更新し、WindowsにおけるMicrosoftは「Transport Layer Security(TLS)」のレガシーバージョンTLS 1.0と1.1の使用を、既定で無効化する予定について発表しました。
「非推奨の機能」一覧に追加されましたが、TLS 1.0/1.1は以前から使用が非推奨の暗号化プロトコルです。インターネットでは、数年前からセキュリティ問題を理由に、TLS 1.0/1.1を非推奨または使用を禁止してきました。Microsoftもそのトレンドに従い、これまでTLS 1.0/1.1に対するさまざまな措置を行ってきました。そのため、今回のTLS 1.0/1.1の非推奨一覧への追加や、既定で無効化実施の発表に戸惑った人も多いのではないでしょうか。
2022年9月には、winhttpとwininetに基づくアプリケーションにおいて、TLS 1.0/1.1が既定で無効にされています。「Internet Explorer(IE)」や「Microsoft Edge」におけるTLS 1.0/1.1は、「インターネットオプション」で既定で無効にされましたが、OSレベルでは無効化されておらず、TLS 1.0/1.1が必要であれば個々のPCのインターネットオプションで有効化することができます。
また、「グループポリシー」(管理用テンプレート\Windows コンポーネント\Internet Explorer\インターネット コントロール パネル\[詳細設定]ページ\暗号化サポートを無効にする)を使用すれば、利用可能なプロトコルを一括で設定できます。
ただし、2022年9月以降、IE(「Windows 10」でのサポートは2022年6月15日に、2023年2月のMicrosoft Edgeの更新で利用できなくなりました)やMicrosoft Edgeでアクセスすると、既定のインターネットオプションの設定(TLS 1.0や1.1を使用しない設定)では、以下の画面1のような警告メッセージが表示されるように動作が変更されました。その場合でも、画面2のようにインターネットオプションを調整することで、TLS 1.0や1.1のサイトに接続することは可能です。
Microsoftが2023年9月から「Windows 11 Insider Preview」ビルドで始めようとしていることは、TLS 1.0/1.1をOSレベルで既定で無効化することです(おそらく、以下に示すレジストリ値の「Enabled」を「0」にするなどで)。
これが実施されると、これまでのようにインターネットオプションの変更でTLS 1.0/1.1にアクセスすることはできなくなります。
TLS 1.0/1.1無効化の実施後にアプリケーションへの影響を調査するには、「システム」イベントログの「Schannel」ソースにあるイベントID「36871」を確認します。それには「イベントビューアー」の「現在のログをフィルダー」機能を利用するか、PowerShellで以下のコマンドラインを実行します(画面3)。
Get-WinEvent -LogName System -FilterXPath "*[System[Provider[@Name='Schannel'] and (EventID=36871)]]"
OSレベルで既定で無効化されたとしても、まだプロトコルが削除されるわけではありません。どうしてもTLS 1.0/1.1を使用する必要がある場合は、レジストリを修正することで、再び有効化できます。コマンドプロンプトを管理者として開き、以下のコマンドラインを実行することで、TLS 1.0/1.1を有効化できます。
REG ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Client" /v Enabled /t REG_DWORD /d 1 /f REG ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server" /v Enabled /t REG_DWORD /d 1 /f REG ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Client" /v Enabled /t REG_DWORD /d 1 /f REG ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server" /v Enabled /t REG_DWORD /d 1 /f
これは、非常に古いシステムで構築されたWebアプリケーションを利用しているといったレアなケースにおける最終的な手段です。Microsoftはさらに次の段階として、これらのプロトコルのサポート自体を将来削除する可能性があります。TLS 1.0や1.1への依存性を完全に排除することが、推奨される選択です。
岩手県花巻市在住。Microsoft MVP 2008 to 2024(Cloud and Datacenter Management)。SIer、IT出版社、中堅企業のシステム管理者を経て、フリーのテクニカルライターに。Microsoft製品、テクノロジーを中心に、IT雑誌、Webサイトへの記事の寄稿、ドキュメント作成、事例取材などを手掛ける。個人ブログは『山市良のえぬなんとかわーるど』。近著は『Windows版Docker&Windowsコンテナーテクノロジ入門』(日経BP社)、『ITプロフェッショナル向けWindowsトラブル解決 コマンド&テクニック集』(日経BP社)。
Copyright © ITmedia, Inc. All Rights Reserved.