Windows7 サポート期限後の安全運用方法

##要約
サポート期限到来後の端末を安全に運用する方法を考えました。
インターネットから隔離するため、ネットワークアダプタやファイアウォールの設定を変更します。

##筆者
インフラエンジニアリング業務に5年間余従事。うちネットワーク構築が3年間半。
直近の業務は、企業の情報システムネットワークにおけるファイアウォールの構築。
令和元年秋期の情報処理安全確保支援士試験に合格。
（その他の情報は[**スキル一覧**](https://kothaka.com/skill?k=bolf1)からご覧ください）
Windows 7のサポート期限対応は、情報処理安全確保支援士の題材でありそうな話題であるため、
今回考察してみました。

##背景
2020年1月14日（執筆時点の2週間後）を以て、
Microsoftのパソコン用基本OSであるWindows 7の延長サポートが終了する事は、
聞いた事があるかと思います。
[**Windows 7 サポート終了情報**](https://www.microsoft.com/ja-jp/windows/windows-7-end-of-life-support-information)

サポートが切れるとどうなるか。

これまでは、脆弱性が見つかった場合には、
開発元であるMicrosoft社が脆弱性対策のためのパッチを作成・公開しています。
サポート期限到来後はそれを行わないとされています。

但し、緊急性の高い脆弱性が発見された場合には、異例にパッチが公開される事があります。
例えば、Windows XPについては2014年4月に既にサポートが終了していますが、
今年2019年も緊急パッチが公開されました。

このように緊急度の高い脆弱性に対してはパッチが公開される事があるとしても、
開発元がサポート期限を宣言しているという事は、上記対応は確約されるものでありません。
脆弱性が残されていると攻撃対象にされやすいため、
情報セキュリティ上、メーカーのサポートが終了した製品は使用を避けるべきでしょう。


サポート期限と脆弱性対策パッチの話は、なにもWindowsに限った話ではありません。

Microsoft Officeなど文書作成ソフト、Adobe ReaderなどPDFリーダーについても、
開発元がいつまで修正版を提供してくれるのかは気にすべきです。
しかし、ユーザーアプリケーションと比較して、
OpenSSLやJava、MySQLのようなミドルウェアは利用されている場所が広範囲に及び、
脆弱性を悪用された場合の影響もより大きくなるため、
サポート期限・ソフトウェア更新がより重要になります。
そして、OSはその端末全体を管理する部分であるため、ミドルウェア以上に注意を払わねばなりません。

OSで言えば、MacBook等のMacOS、iPhone等のiOS、モバイル端末のOSとして現在高いシェアを誇るAndroid、そして無線LANルーターなどNW機器についても、脆弱性対策のためにソフトウェア更新を行っていく必要があります。

しかし、これらの製品においてサポート期限がそれほど話題にならないのは、
Appleは古い製品でも最新Ver. に無償アップデートできるよう努めており、
Android搭載製品が最新OSに対応させるかは、Googleではなく各端末メーカーの対応に委ねられ、
NW機器では一般ユーザーが触れる機会があまり無いためでしょう。

一方、Windowsの場合、パソコンのOSとして9割ものシェアを誇り、
特に企業が業務で使用する場合には一斉に切り替える必要があります。
この事が、ニュースサイトで度々取り上げられたり、家電量販店にポスターやPOPが張られるなど
大きな注目を集める事になった所以でしょう。

Microsoft社も、Windows 10公開当初は無償でアップグレード権を提供していましたが、
ソフトウェア又はハードウェアの動作が保障されないという理由で見送られた端末があり、
2018年度後半から2019年度後半にかけて対応に追われてきました。

##方針
さて、ハードウェアごと最新製品に買い替えたのは良いが、
今度はWindows 7のまま残った端末はどうしようかの問題が出てきます。

企業の場合は廃棄あるいはリース元に返却している事でしょう。
個人の場合、まだ動くのであれば用途を限定してでも使いたいところ。


では、サイバー攻撃の攻撃者はどこから攻撃を仕掛けるのか。
物理的にアクセスされ、破壊や情報窃取の被害に遭うケースも考えられますが、
不正ログインされたり、不正なパケットを送り付けられたり、マルウェアのダウンロードを誘導されたりと、
大体はネットワーク越しに攻撃を仕掛けます。

LANケーブルを抜き、無線LANもオフにし、USBメモリもSDカードも使用せず、、、
完全に外界との接触を絶てば安全である事は間違いありません。
しかし、「プリンタで印刷したい」「他の端末やNASのファイルを読み出したい」など、
LANに接続されていれば便利な場面は少なくないでしょう。

家庭内で使用するなら、内部に悪意のある攻撃者はいないと思いますので、
当該端末がインターネットと直接通信しない限りは大丈夫そうです。
勿論、無線LANはWPA2以上の暗号化機能を使用するなど、セキュリティ設定が必要です。
また、LAN内の他の製品は開発製造元のサポートが受けられ、ソフトウェア更新や設定を適切に行っている
という事が前提であり、
当該端末にも、可能ならエンドポイントセキュリティ製品を導入すべきです。

これなら、インターネットとの通信が必要な用途には難しいですが、
DVDやBlu-rayの再生、デジカメで撮影した写真の閲覧やちょっとした編集、古典的なワープロ用途で使えると思います。

##環境
####搭載ソフトウェア
Windows 7
ESETインターネットセキュリティ (他のエンドポイントセキュリティ製品でも可能かも)

####NW環境
YAMAHA FWX120 (一般的な無線LANルーターでも可能かも)

##方法
下記何れか一つでも効果がありますが、
複数組み合わせる事で、より堅牢になります。
「認識が甘い」「他に良い方法がある」などありましたら、コメントを下さい。

####Windows PC
端末が属するネットワークセグメント以外のIPアドレス宛の通信を無効化させます。

1. タスクバーのネットワーク接続のアイコンから、ネットワークアダプタの設定を開きます。
1. LANの接続に使用しているネットワークアダプタ（LANケーブルを接続しているNICまたは無線LAN子機）を選択し、
プロパティを開きます。
1. IPv6を使用している方は稀だと思いますので、「インターネット プロトコル バージョン 6 (TCP/IPv6)」のチェックを外します。
1. 「インターネット プロトコル バージョン 4 (TCP/IPv4)」をダブルクリックして開きます。
1. DHCP設定の場合は、当該端末に固定アドレスを割り当て、「IP アドレス」にそのアドレス (例:192.168.0.101)、「サブネット マスク」に対応するマスク値 (例:255.255.255.0) を入力します。
1. 「デフォルト ゲートウェイ」と両方の「DNS サーバー」のアドレス入力欄を空にします。
1. [OK]ボタンを押して、各ダイアログを閉じます。

特定のネットワーク以外のIPアドレスとの通信パケットを遮断します。
例としてESET Internet Securityで説明します。

1. タスクバーアイコンから、ESET Internet Securityを開きます。
1. [設定] > [ネットワーク保護] を開きます。
1. 「ファイアウォール」の右側の歯車アイコンをクリックし、[設定] を開きます。
1. [詳細] > 「ルール」 > [編集] を開きます。
1. [追加]ボタンをクリックし、下記ルールを作成します。
1. 作成したルールを選択し、▲ボタンで一番上に移動させます。
1. [OK]ボタンを押して、各ダイアログを閉じます。

|名前|方向|アクション|プロトコル|ローカルポート|ローカルIP|リモートポート|リモートIP|
|:--|:--|:--|:--|:--|:--|:--|:--|
|Internal|双方向|許可|すべて|0-65535|例:192.168.0.0/24|0-65535|例:192.168.0.0/16|
|External|双方向|拒否|すべて|0-65535|例:192.168.0.0/24|0-65535|例:192.168.0.0/16|

####NW環境
Windows 7端末からインターネット宛、インターネットからWindows 7端末宛
の通信パケットをルーター等のNW機器で双方向に遮断します。

パケットフィルタリングルール設定で、下記のようなルールを最下部に追加します。

|プロトコル|送信元IP|送信元ポート|宛先IP|宛先ポート|アクション|
|:--|:--|:--|:--|:--|:--|:--|:--|
|IP|any|any|例:192.168.0.101|any|DENY|
|IP|例:192.168.0.101|any|any|any|DENY|

もしも元々ルールが設定されていなく、他の端末の通信が暗黙のDENYに引っ掛かるようになってしまう場合は、
更に下記のようなルールを追加する必要があるでしょう。

|プロトコル|送信元IP|送信元ポート|宛先IP|宛先ポート|アクション|
|:--|:--|:--|:--|:--|:--|:--|:--|
|IP|例:192.168.0.0/16|any|例:192.168.0.0/16|any|ACCEPT|
|TCP/UDP|例:192.168.0.0/16|any|any|137-139,445|DENY|
|TCP/UDP|例:192.168.0.0/16|any|any|80,443,25,465,587,110,995,143,993,53,123,20-22|ACCEPT|

（NW機器の仕様によっては、IPアドレス指定時にNATの考慮が必要かも知れません）