ソフトウェアのパッチ適用は、エンドユーザーにとって煩わしいものであり、推奨されるパッチが無視されることも少なくありません。 また、管理者にとっても、すべてのシステムに適切なパッチが適用されていることを確認するのは難しいでしょう。
パッチ管理ソフトウェアを使用することで、ネットワーク上のすべてのデバイスを最新の状態に保つことができます。 この種のソフトウェアは、パッチを迅速かつ効率的に展開し、システムや機器をチェックして、どの機器が安全で、どの機器が脆弱かを確認することができます。 私がお勧めするパッチ管理ソフトウェアは、SolarWinds® Patch Managerです。事前にテストされたパッチの豊富なライブラリを備えており、迅速かつ自動的に適用できます。
ソフトウェア パッチの定義
ソフトウェアのパッチとは、定義上、潜在的なセキュリティの脆弱性やその他の問題を修正するために、既存のプログラムのコードを変更するコード更新のパッチです。
パッチには、ホットフィックス、セキュリティ パッチ、サービス パック、非公式パッチなど、いくつかの種類があります。
Why Is Patch Management Important?
パッチマネジメントは重要ではないように聞こえるかもしれませんが、システム全体の生産性とセキュリティの両方に関わる最も重要な側面の1つです。
まず、パッチを当てることは、すべてのソフトウェアが正しく、最も効率的な方法で機能していることを確認するために重要です。 ソフトウェアが古くなると、正常に動作せず、動作が遅くなったり、頻繁にクラッシュしたりすることがあります。 これらの問題を解決するためには、ソフトウェアをアップデートする必要があります。
ソフトウェアやインフラの他の部分は、ベンダーがその製品をさらに開発することで、新しい機能が追加されることがよくあります。
ソフトウェアやその他のインフラストラクチャは、ベンダーの開発が進むにつれて新機能が追加されることがよくあります。
しかしながら、パッチやアップデートを管理すべき最も重要な理由は、セキュリティです。 ソフトウェアの欠陥は、ハッカーが個々のシステムにアクセスし、そこから広範なネットワークやデータにアクセスするための主要な手段です。 ネットワークやインフラのセキュリティパッチは非常に重要であり、多くのパッチの主な機能は、セキュリティ上の脆弱性の原因となるバグや欠陥などの問題を修正することです。 可能な限り迅速にパッチを適用することで、攻撃者がシステムにアクセスする機会を減らすことができます。
成功させるためには、自動化されたパッチ管理ツールを使用するべきです。なぜなら、これらのプロセスを手作業で行うと、すぐに負担が大きくなり、エラーを起こす可能性が高くなるからです。 マシンやプログラム、ネットワークの一部にパッチを当てていないと、その部分が攻撃を受けやすい状態になってしまいます。 パッチ管理ソフトウェアを使用すると、更新が必要なソフトウェアやデバイスを確認し、特定の時間に更新を行うようにスケジュールを設定し、希望する場合はソフトウェアを自動的に更新することができます。
パッチ マネジメント とは
「パッチマネジメントとは何か? ほとんどのパッチでは、ベンダーがパッチをリリースし、ソフトウェアのアップデートが利用可能であることが通知されます。 しかし、多数のプログラムを搭載した多くのデバイスを使用している場合や、すべてのデバイスに同時にパッチを適用したい場合には、パッチ管理プランを作成し、パッチ管理ソフトウェアを使用する必要があります。 特に、システムの一部が物理的なもの、一部が仮想的なもの、一部がクラウドベースのものである場合、このようなハイブリッド環境を管理するための特別なツールが必要になるかもしれません。
サーバーパッチとは
ネットワークや企業機能におけるサーバーの重要性が高いことから、サーバーパッチは通常のソフトウェアパッチよりもはるかに複雑です。 サーバーのオペレーティング システムやアプリケーションは、明確で目立たないメンテナンス ウィンドウ内でパッチを適用する必要があり、パッチが失敗したり、他のシステムを危険にさらしたりしないように、広範なテストが行われます。
Windowsにおけるパッチ適用とは
マイクロソフトのシステムでは、いくつかのパッチ管理ツールがWindowsに組み込まれています。 たとえば、1つ目は Windows Server Update Services (WSUS) と呼ばれるものです。 WSUSは、マイクロソフトからリリースされたさまざまなアップデートを管理し、マシン上のオペレーティングシステムやマイクロソフトのソフトウェアに展開することができるソフトウェア アップデート サービスです。 更新プログラムは、マイクロソフトからダウンロードされた後、お客様のシステムに配布され、関連する各デバイスにインストールされます。 つまり、それぞれのコンピュータを個別にアップデートする必要はありません。
パッチ適用に関わる2つ目のWindowsツールは、System Center Configuration Manager (SCCM)と呼ばれるものです。 SCCMもマイクロソフトの集中型アプリケーションで、一般的にはエンタープライズグレードのパッチ管理自動化システムとされていますが、WSUSはもう少し限定的です。 WSUSは中小企業であれば問題ありませんが、大企業であればSCCMを使うべきです。 SCCMはWSUSを利用し、その機能を拡張したもので、メンテナンスウィンドウの設定、パッチのスケジューリング、自動展開などの機能が含まれています。 また、設定機能やレポート機能も充実しています。 SCCMは、OSやアプリケーションをインストールしたり、ネットワーク上のハードウェアとソフトウェアのインベントリを作成することもできます。
Windowsへのパッチ適用にWSUSやSCCMを使用しても、システム上のサードパーティ アプリケーションとの連携やパッチ適用には、他のツールが必要です。 SCCMは限定的なサードパーティのパッチ機能を提供していますが、一般的なアプリケーションしかカバーしておらず、システム上でマイクロソフト以外の製品を使用している場合は、これ以外のものが必要になります。 WSUS または SCCM と統合できるものを探して、Windows とサード パーティ アプリケーションのパッチ管理を一元化されたコンソールにまとめる必要があります。
パッチ管理のベストプラクティス
パッチは常にいくつかのベストプラクティスに従って適用する必要があります。 パッチ管理プロセスに取り組む際、正しい方法で行わないと、ビジネスに支障をきたしたり、デバイスやアプリケーションが脆弱なままになったり、システムにさらなる問題を引き起こす可能性があります。
- ネットワークとデバイスのインベントリ。 まず、インフラストラクチャ全体の徹底的かつ正確なインベントリを作成します。 つまり、ネットワーク上のすべてのデバイス、それが他のデバイスにどのように接続されているか、どのオペレーティング システムとアプリケーションがインストールされているか、各コンポーネントのバージョンは何かを把握する必要があります。 誰かが忘れてしまった古いハードウェアやソフトウェアが原因で、ネットワークやシステムが侵害されてしまうことはよくあることです。 中小企業や企業がインフラをスキャンし、全体の在庫を把握するためのツールは数多くあります。 この種のスキャンは定期的に行い、正確性をチェックして、新しいデバイスやアプリケーションが追加されても、インベントリが古くならないようにする必要があります。
- 標準化。 ネットワークとデバイスの完全なインベントリができたら、可能な限りデバイスとアプリケーションの標準化を検討します。 すべてのデバイスが同じオペレーティング システムを実行し、同じハードウェアを使用し、同じように構成され、同じアプリケーションを実行していることを確認できれば、パッチ適用や脆弱性検出の際に、このプロセスをより迅速に完了させることができます。 もちろん、インフラストラクチャのすべてを標準化できるわけではありませんが、この目標に向けてできる限りのステップを踏むことで、パッチ管理プロセスをより効率的に行うことができます。
- リスク評価。 システムの徹底的なリスク評価を完了することは、パッチ管理プロセスをスムーズかつ効果的に実行するための次のステップです。 脆弱性と考えられるリスクについての知識がなければ、パッチやアップデートの対象を適切に絞ることはできません。 脆弱性については、いくつかの観点から検討する必要があります。 まず、想定される脅威はどの程度のものか、その脅威に対して自社のシステムはどの程度脆弱なのか、そしてその影響はどの程度なのか。 そして、デバイスやネットワークのセクションを脅威のレベルごとにグループ分けし、システムの一部に対するリスクの高さに合わせたスケジュールで、各デバイスやアプリケーションにパッチを適用することができます。 これにより、システムの低リスク部分への不要な干渉を排除し、最も脆弱な部分が最も定期的にチェックされ、パッチが適用されるようになります。
- 定期的なスキャンと監視。 次に、適切なパッチやアップデートを行うためには、定期的にシステムをスキャンし、監視する必要があります。 監視ツールを使用して、システムのどの部分で重要なパッチが欠けているかを判断することができます。 さらに、ベンダーのパッチリリーススケジュールに目を配り、新しいパッチが利用可能かどうかを確認してください。 パッチ管理ツールは、これらをスキャンし、新しいパッチが適用可能になったときに知らせてくれます。
- パッチテスト。 自分でパッチを作成している場合は、徹底的にテストする必要があります。 パッチをネットワーク全体に展開する前に、パッチが自分のシステムにどのように適用されるかを確実にテストします。 パッチ管理ソフトウェアの中には、事前にテストされたパッチを適用できるものもありますので、これから使用するパッチが正しく動作することがすでに確認されていると確信できます。 パッチを展開する際には、まず、パッチを適用した後にどのような変更が発生するのか、計画された概要をしっかりと文書化する必要があります。 そして、ユーザーに不必要な混乱を与えないように、それぞれの種類のパッチを展開する適切な時期(リスクの高いシステムへの展開、リスクの低いシステムへの展開など)を決定する必要があります。 パッチの適用により、ネットワークの速度が低下したり、プログラムが一時的に使用できなくなったり、ユーザーが仕事やサービスの一部を利用できなくなったりする可能性があります。 パッチの適用は、深夜や週末などのピーク時ではない時間帯に行うのが理想的ですが、パッチ適用中に何か問題が発生した場合には、誰かに監督してもらう必要があります。 混乱は避けたいものですが、金曜の夜にパッチをデプロイして、月曜の朝になって問題があることに気づくということも避けたいものです。
- 監査とレポート。 パッチをリリースする際には、リリース前やリリース中に起こったことをすべて記録するだけでなく、リリース後に起こったことも調べる必要があります。 申請中のパッチがないか、デプロイに失敗したパッチがないか、プロセス中にエラーが発生していないかなどを確認する必要があります。 また、パッチがデプロイされた後にシステムをチェックして、パッチが問題を起こしていないか、新たなバグを生んでいないかを確認するプロセスを設けてください。 最後に、パッチが適用されて問題が発生した場合や、脆弱性にパッチが適用されずにシステムに侵入された場合に備えて、明確なフォールバック・ポリシーを設定する必要があります。 問題をエスカレーションする方法や、古いソフトウェアや展開されたパッチに問題があった場合にスタッフが誰に相談するかなど、明確なコミュニケーションラインを設けておく必要があります。
先に述べたように、パッチ管理ツールを使用することは、必要な更新を維持し、ベスト プラクティスに沿ってシステムにパッチを適用する最良の方法です。
まず、WSUSパッチマネジメントやSCCMを備えたWindowsマシンと簡単に統合でき、サードパーティのアプリケーション用に事前にテストされたパッチも含まれています。 つまり、OSやマイクロソフトのパッチが最新であるかどうか、正常に適用されているかどうかをチェックすることができ、その他のソフトウェアについても監視することができます。 事前にテストされたパッチは、その品質レベルを気にすることなく適用することができます。
Key Takeaways for Patch Management
システムのセキュリティと機能性に関して、ソフトウェア、サーバー、オペレーティング システムへのパッチ適用の重要性を過小評価するべきではありません。 すべてのパッチが最新であることを確認することは、パフォーマンスに影響を与えるバグや、悪意のある侵入者がネットワークやデータストアにアクセスする可能性のある欠陥からシステムを保護するために重要です。 適切なスケジュールでパッチを適用し、あらゆる脆弱性に迅速に対処することで、セキュリティ、コンプライアンス、またはパフォーマンスの問題が発生するのを防ぐことができます。
すべてのパッチ管理プロセスには、Patch Managerのようなパッチ管理ツールを使用するべきです。 また、パッチマネジメントソフトウェアからの適切なレポートにより、安全性を維持する必要のある機密情報に対するコンプライアンスと監査の要件を満たしていることを確認することができます。