ソフトウェア・インテグリティ

 

ロギングと監視のための、7つのベストプラクティス

ロギングおよび監視の仕組みを構築するためのベストプラクティスがあります。

この記事はシノプシスのシニア・セキュリティ・コンサルタント、 Nivedita MurthyAshutosh Ranaによるガイドです。

logging and monitoring best practices | Synopsys

ロギングと監視の概念は新しいものではありませんが、組織は依然としてセキュリティに重点を置いたロギングと監視のポリシーを策定して実装するのに苦労しています。セキュリティチームは、従来の運用指標を収集するだけでなく、さまざまな攻撃を保存、分析、さらには軽減することもできるロギングおよび監視プログラムを構築する必要があります。情報を収集および分析するこのプロアクティブなアプローチは、「アプリケーションレベルのログ」によるコードの問題の検出、「AWS / Azureなどのインフラストラクチャログ」を用いて異常なネットワークトラフィックの特定など、さまざまな方法で開発者、システム管理者、セキュリティチームにとって役立つ情報が得られ、高度なセキュリティ情報およびイベント管理機能を使用して、セキュリティインシデントを検出および防止することが可能となります。これらのロギングと監視のベストプラクティスを採用することで、これらの課題に対処できるのです。

すべてのソフトウェア・セキュリティ・コースを探索

1. ログに記録して監視する必要性を定義

組織がログの記録を必要としている理由を特定することは、記録する必要があるものを定義するのに役立ちます。たとえば、下記は組織が必要とする可能性のある理由の一部です。

  • コンプライアンスのため
  • 法規制のため
  • インシデントレスポンスのため

これらの目的について、セキュリティガバナンスチーム、法務部門、およびその他の利害関係者と話し合うことは、ログ記録と監視の目標を定義するのに役立ちます。

2. ログを記録する必要があるものと、それを監視する方法をリスト化

目標に基づいて、取得すべきメタデータとログに記録すべきイベントを決定します。ログに記録されるメタデータとイベントの例と理由は次のとおりです。

  • PII/PHI トランザクションを HIPAA に準拠
  • 金融取引を PCI DSS に準拠
  • サーバーへの認証試行(ログインの成功および失敗、パスワードの変更)
  • サーバー上で実行されたコマンド
  • データベース上で実行されたクエリー(特にDMLクエリー)

インフラストラクチャ管理者とセキュリティチームは協力して従来の運用指標を収集して分析し、攻撃を軽減可能な、効果的なログの記録と監視のためのプログラムを構築する必要があります。ログイン試行の複数回の失敗やサーバーで実行されたコマンドの毎週の通知など、特定のイベントに関するアラートを設定して、これらのイベントを監視できます。また、開発チームと協力して、ログエントリのさまざまな属性が何を意味するのかを理解することも重要です。通常の操作のベースラインを取得したら、アプリケーションのセキュリティリスクプロファイルに基づいて、異常に対してトリガーされる相関ルール、集計、しきい値、およびアラートを構成できます。たとえば、すべてのログエントリには少なくとも次のものが必要です。

  • アクター(誰が:ユーザー名、IPアドレス)
  • アクション(何を:どのリソースへの読み/書き)
  • タイム(いつ:タイムスタンプ)
  • ロケーション(どこで:地図上の場所、ブラウザー、コードスクリプト名)

3. 監視する必要のある資産とイベントを特定

ログデータは、パフォーマンスとコストに影響を与える膨大な量のデータセットです。監視する必要のあるデータを決定するときは、まず何も残さないことから始めます。どのシステム/アプリケーションを監視する必要があり、どのレベルの監視が必要かを特定する必要があります。また、法で定められた、規制、または契約上の要件に従って、データとシステムを分類する必要があります。この分類は、セキュリティシステムの分類やビジネスデータの分類とは異なる場合があることに注意してください。

4. ロギングと監視のための適切なソリューションを決定

スケーラブルで復元力のあるロギングおよび監視プログラムを構築する際に、商用製品とオープンソースプロジェクトの両方から選択できる多くのソリューションから選択することが可能です。ロギングや監視のアーキテクチャに最適なテクノロジーを選択することは困難な作業になる可能性がありますが、いくつかの重要なポイントは次のとおりです。

  • 監視プロセスを可能な限り自動化
  • 脅威の進化に応じて、アラートとログのソースを調整
  • アラートとログが標準化されたフォーマットであることを確認

5. セキュリティを念頭に置いてロギングおよび監視システムを設計

ロギングおよび監視プログラムは、組織全体の活動を調査し、機密情報が含まれている可能性があるため、それ自体が組織の資産です。 それを保護するために考慮すべきいくつかのポイントがあります。

  • イベントログの機密情報を事前に編集/マスク/匿名化して、機密情報が平文で記録されないようにします(例:PHI / PII情報)
  • RBAC(ロールベースのアクセス制御)の適用
  • ログの整合性チェックを実施して、ログが改竄されていないことを確認
  • 保管時と輸送時に暗号化を適用
  • ログのソースを構成するときは、最小特権の原則に従う
  • 保存および処理する前にログをサニタイズ
  • 高可用性と冗長性のための機能を含める

6. 組織全体のログおよび監視ポリシーを採用

セキュリティチームと協力して、すべてのシステムのログ要件を詳細に定義する全社的なポリシーと手順を実施します。これにより、一貫性が確保され、ロギングでプロトコルと手順が実行されます。 強力な権限と企業の支援を受けたポリシーにより、ロギングと監視の慣行が確実に守られます。

7. アクティブな監視、アラート、およびインシデント対応計画を確立

強力なロギングメカニズムがなければ、組織はインシデントの発生する前、最中、および発生後に暗闇にさらされます。高度なシステムへの攻撃は、多くの場合、数か月または数年にわたって実行されます。あなたの組織はこのようなプローブを検出してブロックすることができるかどうか、モチベーションを持った攻撃者がその時間の間アプリケーションをゆっくりと分解し、検出されない場合、実際のエクスプロイトが発生する可能性が高くなります。このようなシナリオを防ぐには、次の手順が不可欠です。

  • インシデント対応計画を作成と定期的なリハーサルの実施
  • 適切な時間内にアラートをトリガー
  • アラートに対してアクティブな自動アクションを実行

安全なロギングおよび監視プログラムを構築することは簡単な作業ではありませんが、それはあらゆるアプリケーションアーキテクチャの不可欠な部分であり、意欲的で断固とした敵による高度な攻撃の検出とブロックに大きな違いをもたらします。eラーニングコースを調べて、ロギングと監視のベストプラクティスの詳細を確認してください。

Application security best practices course catalog | Synopsys

 

この著者によるその他の情報