TCP/IPの脆弱性でBSoDが引き起こされる危険性。WindowsUpdateで修正、手動での回避策もあり

WindowsUpdate

WindowsUpdate

2021年2月10日のWindowsUpdateにはTCP/IPに影響する以下の脆弱性の修正が含まれています。

  • CVE-2021-24074(深刻度:緊急): IPv4にリモートコード実行(RCE)の脆弱性
  • CVE-2021-24094(深刻度:緊急): IPv6にリモートコード実行(RCE)の脆弱性
  • CVE-2021-24086(深刻度:重大): IPv6にサービス拒否(DoS)の脆弱性

上記、計3件。この内、RCEの脆弱性は攻撃に使用するには複雑なため、すぐには悪用されないことが見込まれていますが、DoSの脆弱性は簡単に使用できるためすぐに悪用される危険性があると予想されています。これらの脆弱性はWindows7 ~ 10まで全てのOSに影響します。

脆弱性が悪用されると、システムがブルースクリーンエラー(BSoD)を引き起こす危険性があるため、Microsoftは、2021年2月10日リリースの以下の更新プログラムを早めに適用するよう推奨しています。

  • Windows10 20H2 / 2004
    KB4601319
  • Windows10 1909
    KB4601315
  • Windows8.1
    KB4601349 (セキュリティのみ)
    KB4601384 (ロールアップ)
  • Windows7 (ESU)
    KB4601363 (セキュリティのみ)
    KB4601347 (ロールアップ)

とはいえ、WindowsUpdateには何かしらのトラブルが多いため、適用を遅らせている人もいるでしょう。そういった場合には、適用するまでの一時的な対策として、以下の回避策でこの脆弱性を防ぐことも可能です。

手動での脆弱性回避策

CVE-2021-24074 (IPv4)の回避策

・回避策1
コマンドプロンプトから以下のコマンドを実行します。

netsh int ipv4 set global sourceroutingbehavior=drop

・回避策の影響
IPv4ソースルーティングは安全でないと見なされておりデフォルトでブロックします。しかし、システムはリクエストを処理し、リクエストを拒否するICMPメッセージを返します。回避策を実行すると、システムはこれらのリクエストを処理せずに完全にドロップします。

・回避策の解除方法
既定の設定である『Dontforward』に戻すにはコマンドプロンプトから以下のコマンドを実行します。

netsh int ipv4 set global sourceroutingbehavior=dontforward

・回避策2
ソースルーティングのリクエストを許可しないよう、ファイアウォールまたはロードバランサーの設定をします。

CVE-2021-24094 / CVE-2021-24086 (IPv6)の回避策

・緩和策
IPv6リンクローカルアドレスはインターネット上ではルーティングできず、リモートの攻撃者が到達することはできません。IPv6リンクローカルアドレスのみで構成されているシステムの場合、攻撃者は同じ論理ネットワークセグメントから送信する必要があります。

・回避策1
コマンドプロンプトから以下のコマンドを実行します。

Netsh int ipv6 set global reassemblylimit=0

このコマンドでパケットの再構築が無効になります。順序がバラバラのパケットがある場合は破棄されます。有効なシナリオでは、順序がバラバラのフラグメントは50個以下であることが必要です。運用システムを更新する前に、テストすることをおすすめします。

・回避策の影響
順序がバラバラのパケットを破棄すると、パケットが失われる可能性があります。

・回避策の解除方法
既定の設定である『267748640』に戻すにはコマンドプロンプトから以下のコマンドを実行します。

Netsh int ipv6 set global reassemblylimit=267748640

・回避策2
IPv6 UDPの断片化を禁止するよう、ファイアウォールまたはロードバランサーの設定をします。

注意点として、回避策を実行すると副作用もあるため、実行しても問題ないか、しっかりと確認することが推奨されます。