Coders Conquer Security:シェアする・学ぶシリーズ - ログ・モニタリングの不十分さ

2019年5月30日発行
ジャープ・カラン・シン著
ケーススタディ

Coders Conquer Security:シェアする・学ぶシリーズ - ログ・モニタリングの不十分さ

2019年5月30日発行
ジャープ・カラン・シン著
リソースを見る
リソースを見る

このブログでは、ハッカーがネットワークを攻撃し、防御を回避するために使用する危険な脆弱性や悪意のある悪用方法について紹介してきました。その内容は、プログラミング言語の弱点を突いたり、さまざまな形式でコードを注入したり、転送中のデータを乗っ取ったりと、多岐にわたります。これらの脅威は非常に多岐にわたりますが、これらの脅威が成功した場合、被害者のアプリケーションには1つの共通した要素があることが多いのです。

ロギングとモニタリングが不十分であることは、アプリケーションの防御構造の中で存在しうる最も危険な状態の1つです。この脆弱性や状態が存在する場合、それに対して行われる高度な攻撃のほとんどは、最終的に成功することになります。ログと監視が不十分であるということは、攻撃や攻撃の試みが発見されない期間が非常に長いことを意味します。これは基本的に、攻撃者が有用な脆弱性を見つけてそれを利用するのに必要な時間を与えてしまうことになります。

このエピソードでは、以下のことを学びます。

  • 不十分なログやモニタリングを攻撃者がどのように利用するか
  • なぜ不十分な記録と監視が危険なのか
  • この脆弱性を修正することができる技術

攻撃者はどのようにして不十分なロギングとモニタリングを利用するのか?

攻撃者は、システムが適切に監視されているかどうか、ログファイルに不審な動きがないかどうか、最初はわかりません。しかし、それを知るのは簡単なことなのです。攻撃者は、よく使われるパスワードをユーザーデータベースに照会するなど、ブルートフォース(総当たり攻撃)のような無作法な攻撃を仕掛けます。そして、数日後にまた同じような攻撃を試みます。もし、2回目の攻撃がブロックされていなければ、誰もログファイルに不審な動きがないか注意深く監視していないことを示しています。

アプリケーションの防御力をテストしたり、アクティブな監視がどの程度行われているかを測定したりすることは比較的簡単ですが、それは攻撃を成功させるための要件ではありません。攻撃者は、できるだけ音を立てないような方法で攻撃を仕掛けることができます。多くの場合、多すぎるアラート、アラートの疲労、不十分なセキュリティ設定、あるいは単に悪用可能な脆弱性の多さなどが相まって、防御側がその存在に気づく前に、目的を達成するための時間が十分に確保されていることになります。

なぜ不十分なログ・モニタリングが危険なのか?

ロギングやモニタリングが不十分だと、攻撃者が攻撃を開始するだけでなく、防御側が対応を開始するよりもずっと前に目的を達成するための時間を与えてしまうことになり、危険です。どのくらいの時間がかかるかは、攻撃を受けたネットワークによって異なりますが、Open Web Application Security Project(OWASP)などのさまざまな団体は、侵入されたネットワークの平均対応時間を191日以上としています。

ちょっと考えてみてください。もし強盗が銀行を襲って 人々が警察に電話して 対応に半年もかかったらどうなるでしょう?

警察が到着したときには、強盗はとっくにいなくなっているだろう。実際には、警察が最初の事件に対応する前に、同じ銀行に何度も強盗が入ることがあります。

サイバーセキュリティの分野でも同じことが言えます。ニュースで報道されるような有名な情報漏えい事件のほとんどは、「破壊と奪取」の類のものではありません。多くの場合、攻撃者が数ヶ月、あるいは数年にわたってデータをほぼ完全にコントロールした後に、標的となった組織が侵害について知ることになります。このように、ログの記録や監視が不十分であることは、優れたサイバーセキュリティを実践しようとする際に起こりうる最も危険な状況の1つです。

不十分なロギングとモニタリングの解消

不十分なログや監視を防ぐには、主に2つのことが必要です。まず、すべてのアプリケーションは、サーバ側の入力検証の失敗を監視し、ログに記録する機能を備えていなければなりません。この機能には、セキュリティチームが、攻撃者が使用しているユーザアカウントはわからなくても、ツールやテクニックを特定できるだけの十分なユーザ・コンテキストが必要です。あるいは、このような入力をSTIX(Structured Threat Information eXpression)のような言語にフォーマットし、セキュリティ・ツールが迅速に処理して適切なアラートを生成できるようにしなければなりません。

第二に、優れたアラートを生成するだけでは十分ではありません。組織は、警告がタイムリーに調査されるよう、役割と責任を確立する必要があります。実際に成功した多くの侵害事件では、攻撃を受けたネットワーク上で警告が発せられましたが、責任の所在を問われたために警告に耳を傾けられませんでした。誰が対応すべきか分からなかったり、誰かが問題を調べていると思い込んだりしていたのです。

責任の所在を明確にするためには、米国標準技術局(NIST)が特別出版物800-61で推奨しているようなインシデント対応・復旧計画を採用することから始めるのがよいでしょう。この他にも、様々な業界に特化したものなど、参考となる文書がありますが、それらを忠実に守る必要はありません。しかし、組織内の誰がアラートに対応し、どのようにしてタイムリーに対応するかを定義した計画を立てることは重要です。

不十分なロギングとモニタリングに関する詳細情報

さらに、OWASPが不十分なロギングとモニタリングについて述べていることを参考にしてみてください。また、サイバーセキュリティチームを究極のサイバー戦士に育成するSecure Code Warrior プラットフォームの無料デモで、新たに得た防御の知識を試すこともできます。この脆弱性やその他の脅威の対策についての詳細は、Secure Code Warrior ブログをご覧ください。

不十分なログやモニタリングを見つけ、修正し、解消する準備はできていますか?私たちのトレーニングアリーナへどうぞ。 [Start Here] (ここからスタート)

リソースを見る
リソースを見る

著者

Jaap Karan Singh

もっと知りたい?

セキュアコーディングに関する最新の知見をブログでご紹介しています。

当社の豊富なリソースライブラリは、安全なコーディングアップスキルに対する人間的なアプローチを強化することを目的としています。

ブログを見る
もっと知りたい?

開発者主導のセキュリティに関する最新の研究成果を入手する

ホワイトペーパーからウェビナーまで、開発者主導のセキュアコーディングを始めるために役立つリソースが満載のリソースライブラリです。今すぐご覧ください。

リソース・ハブ

Coders Conquer Security:シェアする・学ぶシリーズ - ログ・モニタリングの不十分さ

2019年5月30日発行
Jaap Karan Singh著

このブログでは、ハッカーがネットワークを攻撃し、防御を回避するために使用する危険な脆弱性や悪意のある悪用方法について紹介してきました。その内容は、プログラミング言語の弱点を突いたり、さまざまな形式でコードを注入したり、転送中のデータを乗っ取ったりと、多岐にわたります。これらの脅威は非常に多岐にわたりますが、これらの脅威が成功した場合、被害者のアプリケーションには1つの共通した要素があることが多いのです。

ロギングとモニタリングが不十分であることは、アプリケーションの防御構造の中で存在しうる最も危険な状態の1つです。この脆弱性や状態が存在する場合、それに対して行われる高度な攻撃のほとんどは、最終的に成功することになります。ログと監視が不十分であるということは、攻撃や攻撃の試みが発見されない期間が非常に長いことを意味します。これは基本的に、攻撃者が有用な脆弱性を見つけてそれを利用するのに必要な時間を与えてしまうことになります。

このエピソードでは、以下のことを学びます。

  • 不十分なログやモニタリングを攻撃者がどのように利用するか
  • なぜ不十分な記録と監視が危険なのか
  • この脆弱性を修正することができる技術

攻撃者はどのようにして不十分なロギングとモニタリングを利用するのか?

攻撃者は、システムが適切に監視されているかどうか、ログファイルに不審な動きがないかどうか、最初はわかりません。しかし、それを知るのは簡単なことなのです。攻撃者は、よく使われるパスワードをユーザーデータベースに照会するなど、ブルートフォース(総当たり攻撃)のような無作法な攻撃を仕掛けます。そして、数日後にまた同じような攻撃を試みます。もし、2回目の攻撃がブロックされていなければ、誰もログファイルに不審な動きがないか注意深く監視していないことを示しています。

アプリケーションの防御力をテストしたり、アクティブな監視がどの程度行われているかを測定したりすることは比較的簡単ですが、それは攻撃を成功させるための要件ではありません。攻撃者は、できるだけ音を立てないような方法で攻撃を仕掛けることができます。多くの場合、多すぎるアラート、アラートの疲労、不十分なセキュリティ設定、あるいは単に悪用可能な脆弱性の多さなどが相まって、防御側がその存在に気づく前に、目的を達成するための時間が十分に確保されていることになります。

なぜ不十分なログ・モニタリングが危険なのか?

ロギングやモニタリングが不十分だと、攻撃者が攻撃を開始するだけでなく、防御側が対応を開始するよりもずっと前に目的を達成するための時間を与えてしまうことになり、危険です。どのくらいの時間がかかるかは、攻撃を受けたネットワークによって異なりますが、Open Web Application Security Project(OWASP)などのさまざまな団体は、侵入されたネットワークの平均対応時間を191日以上としています。

ちょっと考えてみてください。もし強盗が銀行を襲って 人々が警察に電話して 対応に半年もかかったらどうなるでしょう?

警察が到着したときには、強盗はとっくにいなくなっているだろう。実際には、警察が最初の事件に対応する前に、同じ銀行に何度も強盗が入ることがあります。

サイバーセキュリティの分野でも同じことが言えます。ニュースで報道されるような有名な情報漏えい事件のほとんどは、「破壊と奪取」の類のものではありません。多くの場合、攻撃者が数ヶ月、あるいは数年にわたってデータをほぼ完全にコントロールした後に、標的となった組織が侵害について知ることになります。このように、ログの記録や監視が不十分であることは、優れたサイバーセキュリティを実践しようとする際に起こりうる最も危険な状況の1つです。

不十分なロギングとモニタリングの解消

不十分なログや監視を防ぐには、主に2つのことが必要です。まず、すべてのアプリケーションは、サーバ側の入力検証の失敗を監視し、ログに記録する機能を備えていなければなりません。この機能には、セキュリティチームが、攻撃者が使用しているユーザアカウントはわからなくても、ツールやテクニックを特定できるだけの十分なユーザ・コンテキストが必要です。あるいは、このような入力をSTIX(Structured Threat Information eXpression)のような言語にフォーマットし、セキュリティ・ツールが迅速に処理して適切なアラートを生成できるようにしなければなりません。

第二に、優れたアラートを生成するだけでは十分ではありません。組織は、警告がタイムリーに調査されるよう、役割と責任を確立する必要があります。実際に成功した多くの侵害事件では、攻撃を受けたネットワーク上で警告が発せられましたが、責任の所在を問われたために警告に耳を傾けられませんでした。誰が対応すべきか分からなかったり、誰かが問題を調べていると思い込んだりしていたのです。

責任の所在を明確にするためには、米国標準技術局(NIST)が特別出版物800-61で推奨しているようなインシデント対応・復旧計画を採用することから始めるのがよいでしょう。この他にも、様々な業界に特化したものなど、参考となる文書がありますが、それらを忠実に守る必要はありません。しかし、組織内の誰がアラートに対応し、どのようにしてタイムリーに対応するかを定義した計画を立てることは重要です。

不十分なロギングとモニタリングに関する詳細情報

さらに、OWASPが不十分なロギングとモニタリングについて述べていることを参考にしてみてください。また、サイバーセキュリティチームを究極のサイバー戦士に育成するSecure Code Warrior プラットフォームの無料デモで、新たに得た防御の知識を試すこともできます。この脆弱性やその他の脅威の対策についての詳細は、Secure Code Warrior ブログをご覧ください。

不十分なログやモニタリングを見つけ、修正し、解消する準備はできていますか?私たちのトレーニングアリーナへどうぞ。 [Start Here] (ここからスタート)

弊社製品や関連するセキュアコーディングのトピックに関する情報をお送りする許可をお願いします。当社は、お客様の個人情報を細心の注意を払って取り扱い、マーケティング目的で他社に販売することは決してありません。

送信
フォームを送信するには、「Analytics」のCookieを有効にしてください。完了したら、再度無効にしてください。