GitHub にコミュニティ パーサーを実装する
Google Security Operations は、GitHub のオープンソース リポジトリを利用して、コミュニティ、パートナー、お客様がパーサーの開発とメンテナンスでコラボレーションできるようにしています。このリポジトリにより、コミュニティの貢献によって Google SecOps で利用可能なパーサーのセットを拡張し、維持できます。
目標
- コミュニティの貢献を有効にする: 外部ユーザー、パートナー、お客様が、新しいコミュニティ パーサーや更新されたコミュニティ パーサーを提供できるようにします。
- 導入を促進する: コミュニティ パーサーをカスタム パーサー インスタンスに導入するためのメカニズムをユーザーに提供します。
- 品質の確保: 厳格な審査とテストのフレームワークを維持し、リリース前にすべてのコントリビューションのセキュリティと機能の品質を検証します。
始める前に
chronicle.adminIAM ロールの一部であるchronicle.parsers.create権限があることを確認します。- コミュニティ パーサーに貢献するには、投稿者ライセンス契約(CLA)に署名します。詳細については、Contributor License Agreement に署名するをご覧ください。
リポジトリの構成
すべてのパーサーは、GitHub リポジトリの Content Hub 領域の最上位の parsers/ ディレクトリに整理されています。各ログソースには、独自の専用サブディレクトリがあります。
content-hub/
└── content/
└── parsers/
├── third_party/
│ ├── community/
│ │ ├── VENDOR1_PRODUCT1/cbn/
│ │ └── VENDOR2_PRODUCT2/cbn/
│ ├── partnerA/
│ │ └── VENDOR1_PRODUCT1/cbn/
│ └── partnerB/
│ └── VENDOR1_PRODUCT1/cbn/
...
フォルダの命名規則
third_party/community/parser リポジトリ内のすべてのサブディレクトリのフォルダ命名規則は厳密に定義されています。これらの標準により、システムの互換性、お客様の見つけやすさ、Google SecOps の内部規則との整合性が確保されます。
GitHub でコミュニティ パーサーを作成する
次のセクションでは、コミュニティ パーサーを作成して管理する方法について説明します。
コミュニティ パーサーを見つけてダウンロードする
- 必要なログタイプのフォルダに移動します。
metadata.jsonファイルを確認して、パーサーでサポートされているログソースに関連する参照を確認します。- CBN 構文のコアパーサー ロジックを含む
parser.confファイルをダウンロードします。
Google SecOps にコミュニティ パーサーをデプロイする
次のステップでは、コミュニティ パーサーをコピーして独自のカスタム パーサー インスタンスに変換する方法について説明します。デプロイされると、パーサーはユーザーが管理するカスタム パーサーとして動作します。
- Google SecOps インスタンスで、ダウンロードした
parser.confファイルの内容を、[設定> データ マネジメント > パーサー] の [パーサーを作成] ページの対応するフィールドにアップロードまたは貼り付けます。SIEM のみのプラットフォームを使用している場合は、[設定] > [パーサー] に移動します。
カスタム パーサーを検証する
Google SecOps インスタンスにパーサーをデプロイすると、組み込みのカスタム パーサー検証が自動的にトリガーされ、パイプラインの障害や正規化の問題がチェックされます。これらの検証が失敗した場合は、パーサー ロジックを修正するか、特定のユースケースに合わせてパーサーのコピーを変更する必要があります。コミュニティ リポジトリに修正や機能強化を貢献し、オープンソース コミュニティに積極的に参加することをおすすめします。
GitHub で新しいパーサーを投稿する方法や既存のパーサーを更新する方法について詳しくは、GitHub パーサーの手順をご覧ください。
統合で問題が発生した場合は、GitHub でケースを登録してください。コミュニティ パーサーは Google サポートの対象外です。
さらにサポートが必要な場合 コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。