・プロトコル設定
情報システム開発契約のセキュリティ仕様作成のためのガイドライン
詳細設定対策に必要な措置
Windows †
Windows SMB †
SMBv1はランサムウェアの攻撃を受ける脆弱性を持っています。このため、SMBv1を無効にする必要があります。
なお、Linux ベースのNASやSambaをFile Serverとして使用する例は多数あるため、後述の Linux も参照し、SMBv1の存在に注意してください。
- Microsoft Windows と Windows Server で SMBv1、SMBv2、SMBv3 を検出する方法と有効または無効にする方法: https://support.microsoft.com/ja-jp/help/2696547/detect-enable-disable-smbv1-smbv2-smbv3-in-windows-and-windows-server
- 警告
SMBv2 または SMBv3 は無効にしないことをお勧めします。 接続不良等の切り分けを行う場合でも、あくまでも "一時的な" トラブルシューティング手段として、SMBv2 または SMBv3 を無効にしてください。 SMBv2 または SMBv3 を無効なままにしないでください。
- SMBの各バージョンと、対応しているWindows OS
出典:https://www.atmarkit.co.jp/ait/articles/1705/17/news043_3.html
SMBのバージョン 対応しているWindows OS SMB 1.0(SMBv1) Windows 2000/XP/Vista/7/8/8.1/10、Windows 2000 Server/Windows Server 2003/2003 R2/2008/2008 R2/2012/2012 R2/2016 SMB 2.0 Windows Vista/7/8/8.1/10、Windows Server 2008/2008 R2/2012/2012 R2/2016 SMB 2.1 Windows 7/8/8.1/10、Windows Server 2008 R2/2012/2012 R2/2016 SMB 3.0 Windows 8/8.1/10、Windows Server 2012/2012 R2/2016 SMB 3.02 Windows 8.1/10、Windows Server 2012 R2/2016 SMB 3.11 Windows 10、Windows Server 2016
Windows TLS †
SSL3.0、TLS1.0、TLS1.1には脆弱性があります。TLS1.2 以上を使用するようにしてください。製品のDefault のままでは脆弱性のある暗号が使用されてしまい、攻撃や情報漏洩の原因となります。暗号の脆弱性情報を収集し、Windows の半期リリースに合わせて、少なくとも半年に1回は暗号スイートの見直しを行ってください。
また、Webサーバー側では Linux が使用されることが多いため、後述のTLSの設定を実施してください。
SSL/TLS攻撃方法に対する耐性 | TLS1.3 | TLS1.2 | TLS1.1 | TLS1.0 | SSL3.0 |
ダウングレード攻撃 | 安全 | 脆弱 | |||
バージョンロールバック攻撃 | 安全 | 脆弱 | |||
BEAST/POODLE攻撃 | 安全 | パッチ適用要 | 脆弱 |
出典:IPA TLS 暗号設定ガイドライン Ver.3.0.1 2020年7月
暗号スイートとは †
暗号スイートは、キー交換、バルク暗号化、メッセージ認証の暗号アルゴリズムの組み合わせです。
- キー交換アルゴリズム サーバーとクライアント間で共有キーを作成するための情報を保護します。
- バルク暗号化アルゴリズム サーバーとクライアント間のメッセージを暗号化します。
- メッセージ認証アルゴリズム
メッセージの整合性を保証し、ハッシュ生成と署名を行います。
キー交換 バルク暗号化 楕円曲線 TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SH384_P384A 署名 ハッシュ
Group Policy による暗号スイートの設定 †
グループポリシーで以下の順序となるよう、設定を確認してください。
[ポリシー]>[コンピューターの構成]>[管理用テンプレート]>[ネットワーク]>[SSL 構成設定]
暗号スイート文字列 | SCH_ USE_ STRONG_CRYPTO で許可 | TLS / SSLプロトコルバージョン |
TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 | はい | TLS 1.2 |
TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 | はい | TLS 1.2 |
TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 | はい | TLS 1.2 |
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 | はい | TLS 1.2 |
TLS_DHE_RSA_WITH_AES_256_GCM_SHA384 | いいえ | TLS 1.2 |
TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 | はい | TLS 1.2 |
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384 | はい | TLS 1.2 |
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 | はい | TLS 1.2 |
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 | はい | TLS 1.2 |
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 | はい | TLS 1.2 |
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA | はい | TLS 1.2、TLS 1.1、TLS 1.0 |
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA | はい | TLS 1.2、TLS 1.1、TLS 1.0 |
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA | はい | TLS 1.2、TLS 1.1、TLS 1.0 |
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA | はい | TLS 1.2、TLS 1.1、TLS 1.0 |
TLS_RSA_WITH_AES_256_GCM_SHA384 | はい | TLS 1.2 |
TLS_RSA_WITH_AES_128_GCM_SHA256 | はい | TLS 1.2 |
TLS_RSA_WITH_AES_256_CBC_SHA256 | はい | TLS 1.2 |
TLS_RSA_WITH_AES_128_CBC_SHA256 | はい | TLS 1.2 |
TLS_RSA_WITH_AES_256_CBC_SHA | はい | TLS 1.2、TLS 1.1、TLS 1.0 |
TLS_RSA_WITH_AES_128_CBC_SHA | はい | TLS 1.2、TLS 1.1、TLS 1.0 |
TLS_RSA_WITH_3DES_EDE_CBC_SHA | はい | TLS 1.2、TLS 1.1、TLS 1.0 |
TLS_RSA_WITH_NULL_SHA256 | いいえ | TLS 1.2 注 |
TLS_RSA_WITH_NULL_SHA | いいえ | TLS 1.2、TLS 1.1、TLS 1.0、SSL 3.0 注 |
注:アプリケーションが明示的に要求する場合にのみ使用されます。
TLS Cipher Suites in Windows 10 v1903, v1909, and v2004:https://docs.microsoft.com/en-us/windows/win32/secauthn/tls-cipher-suites-in-windows-10-v1903
Linux †
Samba SMB †
/etc/samba/smb.conf の [global] に以下の項目を追記します。
[global]
server min protocol = SMB2
出典:http://www.samba.gr.jp/project/translation/4.1/htmldocs/manpages/smb.conf.5.html
TLS1.0とTLS1.1の無効化 †
TLS1.2 を使うには OpenSSL のバージョンが 1.0.1 以上であることが必要です。
$ openssl version
OpenSSL 1.0.2k-fips 26 Jan 2017
- Apache httpd 次の設定は、Apache httpd サーバーで TLS1.0 と TLS1.1 を無効にします。
vi /etc/httpd/conf.d/ssl.conf
…
SSLProtocol -all +TLSv1.2
…
設定後、Apache httpd を再起動してください。
- nginx 次の設定は、nginx サーバーで TLS1.0 と TLS1.1 を無効にします。
vi /etc/nginx/conf.d/virtual.conf
…
ssl_protocols TLSv1.2
…
設定後、nginx を再起動してください。