メインコンテンツへスキップ
パッチ管理の必要性を表すマザーボード上の絆創膏の画像
視点

スローパッチングの必携ガイド:その理由、リスク、そして対策

最近の調査によると、重要なソフトウェアの脆弱性に対するパッチ適用に大幅な遅れが生じていることが明らかになりました。 なぜこのような事態が起こるのか、なぜセキュリティチームが時としてこれを容認するよう促されるのか、そしてこの(ますます危険な)傾向を食い止めるための対策について、以下にご説明します。

マイクロソフトがソフトウェアの更新プログラムを公開する「パッチ・チューズデー()」は、毎月決まった日に、まるで時計のように確実に訪れます。 (少なくともサイバーセキュリティの世界では)ほぼ誰もがそのことを知っていますので、ITチームはアラートを受け取り次第、システムを更新するだろうと思われるでしょう。

ところが、実際にはそうではないのです。 Synopsysが実施した最近の「 」調査( )によると、IT専門家の28%が重大な脆弱性へのパッチ適用に少なくとも3週間を要しており、さらに 20%が最大1か月を要していると認めています。

脅威アクターが脆弱性を標的とした新たな攻撃を開発している現在、 のパッチ管理 に対するこの遅々とした対応は、数え切れないほどのネットワークやデータをより大きなリスクにさらしています。 それは、点検警告灯が点灯したまま車を運転するようなものです。問題があることは分かっているものの、車がまだ走っているため、修理を後回しにしてしまいがちです。

点検警告灯が点灯してから、車が故障するまでには数週間から数ヶ月かかることがあります。 セキュリティの分野では、パッチの通知が届いた際、すでに手遅れでない限り、問題を修正できるのはほんの数秒間しかありません。なぜなら、悪意のある攻撃者は、既知の脆弱性を絶えず スキャンし続けているからです。

「たとえ企業ネットワークの内側にいて、ファイアウォールで保護されていたとしても、誰かがその境界を突破してその脆弱性を見つけ出すのは時間の問題です」と、ソフトウェアセキュリティ情報機関の顧問であり、カーネギーメロン大学のサイバーセキュリティ教授、そしてForAllSecureのCEOを務めるデビッド・ブラムリー氏は述べました。 「セキュリティの観点から言えば、できるだけ早くパッチを適用すべきです。」

パッチの適用が遅れる理由

この1年間、ITおよびセキュリティチームは、 MOVEit、攻撃者がシステムを乗っ取る可能性のあるファイル転送のゼロデイ脆弱性 、curl、URL構文を使用してデータを転送するオープンソースツールに対するゼロデイ攻撃、および Apache Superset 、設定情報やデータベースをさらしてしまうゼロデイ脆弱性といった問題に直面しました。 によると、毎年 100件未満の 新たなゼロデイ攻撃が発生していますが、これらは単一の組織だけでなく、そのソフトウェアを使用しているすべての人を標的とするため、甚大な被害をもたらす傾向があります。 最小限の労力でこれほど多くの標的を攻撃できることから、国家やサイバー犯罪組織にとって、この手法は人気の高い攻撃手段となっています。

「たとえ企業ネットワークの内部にいて、ファイアウォールで保護されていたとしても、誰かが境界を突破してその脆弱性を見つけ出すのは時間の問題です。」
デビッド・ブラムリー氏(カーネギーメロン大学 ソフトウェアセキュリティ顧問兼教授)

では、なぜITチームやセキュリティチームは、パッチが公開されてから適用するまでにこれほど時間がかかるのでしょうか?

最初の課題は、 の可視性に関するものです()。セキュリティチームは、ネットワーク上で実際に使用されている資産( )やエンドポイント( )の数と種類を把握する必要があります。これには、企業が正式に承認した機器だけでなく、従業員が個人的に持ち込んだ数多くのデバイスやアプリも含まれます。 この脆弱性は、例えば、従業員が利用しているもののIT部門には報告されていない「シャドーIT」の ( )などに存在する可能性があります。 あるいは、DevOpsチームが、サポート対象外のツールに依存した環境を使用している可能性もあります。

パッチの適用が遅れる2つ目の要因は、ソフトウェアの可視性、具体的には、脆弱性が存在するソフトウェア内のコンポーネントに関連しています。 ゼロデイ脆弱性が公表されると、セキュリティチームは、自社の ソフトウェアのサプライチェーン について十分な知識がないことに気づき、ネットワーク上で使用されているアプリケーションのいずれかに、感染したコンポーネントが組み込まれていないかを急いで確認しなければならないという事態が、あまりにも頻繁に発生しています。

[関連記事:ソフトウェア・サプライチェーンを守る 7 の方法]

これが、 で発生した出来事です。 では、 2021年12月 において、数万ものアプリケーションで使用されている人気のオープンソースJavaロギングライブラリ「Apache Log4j」にゼロデイ脆弱性が発見されました。 その直後にパッチが公開されましたが、それでもなお、2年以上が経過した今でも、驚くほど多くの企業がこの脆弱性を修正していません。 ( が最近実施した調査( )によると、Log4j を使用しているアプリの38%が、セキュリティ上の問題があるバージョンに依存していることが判明しました。)

こうした問題の原因となっているコンポーネントを特定するため、企業では、 のソフトウェア部品表(SBOM)の利用がますます増えています。これは、組織で使用されているすべてのソフトウェアアプリやプログラムに含まれるコンポーネントや構成要素を詳細に明記したものです。 「ご自宅のパントリーにあるさまざまな食材を思い浮かべてみてください」と、Tanium(本誌の発行元)のエンドポイントセキュリティ研究ディレクター、メリッサ・ビショピング氏は説明しました。 食品メーカーは、すべての商品のすべての原材料を綿密に追跡管理しており、これにより、例えばリステリア菌や大腸菌の集団感染が発生した場合でも、汚染された原材料がいつ、どこで製品に混入したかを正確に特定することができます。 同様に、SBOMを活用することで、ソフトウェアのビルド構成要素を追跡しやすくなり、脆弱性が検出された際にその情報をより迅速に提供できるようになります。

パッチ適用が遅れる3つ目の考えられる理由は、ビジネス上の事情に起因しています。

「事業は継続しなければなりませんし、多くのシステムでは停止やダウンタイム、あるいは再起動が必要となります」とビショピング氏は述べました。 「その結果、パッチの適用は後回しにしなければならないと主張する事業主や運用チームから反発を招く可能性があります。」

また、脆弱性が判明し、企業の経営陣にもその旨が伝えられ、パッチの適用に前向きな姿勢を示しているにもかかわらず、ベンダーがそのパッチをリリースするまでは何もできないというケースもあります。 これは、特にオープンソースソフトウェアや、オープンソースのコンポーネントを使用しているシステムにおいて問題となります。

「ベンダーがソフトウェアを更新するのを待つ必要があります」とビショピング氏は付け加えます。 「つまり、エコシステム全体がそれらの更新を提供できるようになるのを待ち、その後、自社の環境においてその更新を円滑に進めるためのプロセス、技術、およびポリシーを整える必要があるということです。」

なぜ、ペースを落とすことが時々とても魅力的に感じられるのでしょうか

パッチの適用を先延ばしにする人の中には、自分には正当な理由があると主張する人もいます。彼らは、すぐにパッチを適用すると、かえって事態を悪化させてしまうのではないかと懸念しているのです。

「サービス停止やダウンタイム、再起動などが発生すると、パッチの適用を先送りすべきだと主張する事業主や運用チームからの反発を招く可能性があります。」
タニウムのエンドポイントセキュリティ研究部門ディレクター、メリッサ・ビショピング氏

「パッチを適用すると、予期せぬ問題が生じる可能性があります」と、ブルムリー氏は述べました。 ユーザーとしては、アップグレードにどれくらいの時間がかかるのか、修正プログラムを適用することでシステムに不具合が生じるのか、あるいはどのような問題を解決・防止しようとしているのか、といったことは分かりません。

開発者の立場からすると、既存のコードの安定性を維持するのは一苦労になることがあります。 「コードを書いたときは、問題なく動作していました。」 「しかし、アップデートが必要になった際、開発者はその依存関係のうちどこに新たな不安定性が生じているのか把握できていないのです」と彼は指摘しました。

開発者は、パッチを適用するように指示された際、矛盾したメッセージを受け取ることがあります。 一つは、脆弱性のあるコンポーネントをすべてできるだけ早くアップグレードすることであり、もう一つは、何の問題も発生しないようにすることです。 ブルムリー氏は、その2つ目の点について、開発者が自分の仕事を評価する基準はそこにあると付け加えました。つまり、修正を余儀なくされるよりも、堅実なコードを作成したいと考えているのです。

開発者の負担を軽減し、未知の脆弱性に対するパッチの有効性が確認されるまで待つという誘惑を減らすために、ITおよびセキュリティチームは、「 (設計段階からのセキュリティ)」 というアプローチを導入することができ(また、そうすべきです)。 このアプローチは、継続的なテストの実施や、開発プロセスへの認証対策の組み込みを通じて、脆弱性を可能な限り排除することを目的としています。 The National Cybersecurity Strategy, released by the White House in 2023, strongly recommends organizations adopt security-by-design protocols. サイバーセキュリティ・インフラセキュリティ庁(CISA)によると、「セキュリティ・バイ・デザイン」を実現することで、パッチのリリースから適用までの期間を含む、サイバーセキュリティ上のギャップをより効果的に解消できるとのことです。

[関連記事:NFLのレジェンド、ビル・ベリチック氏が教えてくれる迅速なパッチ管理の秘訣――そして、サイバーセキュリティ戦略を成功に導くその他の4つの重要な要素]

組織全体で「セキュリティ・バイ・デザイン」が当たり前になるまでは、IT部門、セキュリティ部門、開発チームの各チームが連携し、パッチ適用を迅速に進められるよう、何らかのプロセスを確立する必要があります。

パッチ適用はポリシーの策定から始まります

デントンズ社のグローバルデータプライバシー・サイバーセキュリティグループのパートナーであるカイル・ミラー氏によると、自宅のパソコンでChromeやWindowsのアップデートを適用する個人ユーザーとは異なり、企業環境におけるパッチの対応は、ポリシーの策定から始まるそうです。

「もしあるツールがアプリケーションの 80%を監視している場合、残りの 20%のアプリケーションは、パッチ管理ツールの対象外であるため、セキュリティ上のリスクが著しく高まることになります。」
デントンズ、パートナーのカイル・ミラー氏

「まずは、パッチ管理に関する方針と手順を文書化することから始めるべきです」とミラー氏は述べました。 これにより、パッチを適用する担当者が、会社の期待事項を確実に把握できるよう、組織的な管理が行われます。

「私が関わっている企業のほとんどは、定例のパッチ適用を行うために、業務時間外に一定の時間帯を確保しています」とミラー氏は述べました。 「しかし、必要に応じて重大な脆弱性へのパッチ適用を承認するためのプロセスも必要であり、場合によっては、それをできるだけ迅速に行う必要があります。」 そのためには、システムの一覧を作成し、潜在的なリスクやパッチの出所を特定する必要があります。

パッチ適用が営業時間外に行われる理由の一つは、それによって生じるダウンタイムを最小限に抑えられるからです。 また、パッチの適用を手作業で行う場合――これは時間のかかる作業ですが――セキュリティチームがそれに取り組めるのは、往々にしてこの時だけなのです。

これにより、 の自動化とAI の両方の導入が正当化されます。 パッチ適用プロセスを自動化することで、本来なら反復的な作業となる手動による介入の必要性を減らすだけでなく、更新への対応をより迅速に行うことが可能となり、その結果、脆弱性が存在する期間を短縮することができます。 パッチ適用プロセスを自動化することで、エクスプロイトによるデータ漏洩のリスクを低減し、コンプライアンス目標の達成に向けた企業の取り組みを強化することもできます。 また、組織は や といったAIソリューションを活用することも可能です。これらは、重大なリスクに基づいて脆弱性の優先順位を付け、その優先順位に応じてパッチ適用を最適化することができます。

[関連記事:脅威の検知を高速化? 応答時間が短縮されるのでしょうか? AIを活用したサイバーセキュリティの究極ガイドには、これらをはじめ、メリット、リスク、そして得られる成果など、さらに多くの情報が掲載されています。

パッチ管理ツールは数多く存在しますが、ミラー氏は、どのツールも効果を発揮するためには、それぞれの具体的なニーズに合わせてカスタマイズする必要があると警告しています。

「あるツールがアプリケーションの 80%を監視している場合、残りの 20%のアプリケーションは、パッチ管理ツールの対象外となっているため、セキュリティ上のリスクが著しく高まることになります」とミラー氏は述べました。 同様に、社内システムの古いバージョンを特定するのに役立つパッチ管理ツールも、セキュリティ担当者がそれらの通知を確認し、システムを最新の状態に更新して初めて、その真価を発揮するものです。

とはいえ、 のツールの乱立にも注意が必要です。 ツールが多すぎると、かえって効果的なパッチ適用やサイバーセキュリティ全体の妨げになることがあります。 最も効果的なパッチ適用プロセスを実現するためには、ITおよびセキュリティチームは、すでに手元にあるツールを評価し、重複やカバーされていない領域を特定し、各ツールの有効性(そのツールが現在のセキュリティ問題に対処できているか、あるいは現在導入されているシステムと連携しているか)を判断した上で、 の自動パッチ適用プロセス を活用して、手作業をどのように最小限に抑えられるかを検討する必要があります。

「ツールを導入するだけでなく、自社のシステムに合わせて調整し、適切に実装した上で、社内のITチームによる監視を行うことが必要です」とミラー氏は述べました。

パッチ適用体制の改善

どのようなツールを使用しようとも、どのようなポリシーを導入しようとも、あるいは開発段階でコードがどれほど堅牢であっても、脆弱性は常に発生してしまうものです。 こうした現実を踏まえ、企業はパッチ適用に関する社風を転換する必要があります。 そのための方法の一つとして、 の脆弱性管理プログラム( )を導入することが挙げられます。

「実際の脆弱性管理プログラムの構築は、効果的なパッチ管理プログラムの構築の一環です」と、Tanium社のビショピング氏は述べました。

一見同じものに聞こえるかもしれませんが、実は違います。 脆弱性管理では、脅威を評価し、それぞれが環境にどのような影響を及ぼす可能性があるかを分析します。 組織のセキュリティにとって極めて危険なものもあれば、深刻度の高い脆弱性であっても、お使いのシステムでは悪用されない場合もあります。

脆弱性管理プログラムの策定に加え、組織はセキュリティ全般の意識向上を図る必要があります。 セキュリティ意識向上研修。 ユーザーにセキュリティ対策が不十分なシステムがもたらす影響を示し、パッチが適用されていない脆弱性の危険性を強調し、システムの運用を効率化する方針や手順を策定することで、ITおよびセキュリティチームは、パッチの適時適用を妨げる課題により適切に対処できるようになります。