BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース eBPFのKubernetesセキュリティツールTetragonがパフォーマンスと安定性を向上させる

eBPFのKubernetesセキュリティツールTetragonがパフォーマンスと安定性を向上させる

原文リンク(2023-11-07)

Isovalent社は、eBPFベースのKubernetesセキュリティオブザーバビリティ(可観測性)とランタイム強制ツールであるCilium Tetragonの1.0リリースを発表した。eBPFを介してポリシーとフィルタを直接適用して、プロセスの実行、特権の昇格、ファイルとネットワークのアクティビティを監視できる。

Tetragonは、セキュリティとランタイム・エンフォースメントの実行に使用できる。Kubernetesを意識しており、名前空間やポッドといったKubernetesの概念を理解する。TetragonはHelmを使ってKubernetesクラスタにデプロイできる。Tetragronはデフォルトでprocess_execprocess_exitイベントを生成し、より高度なユースケース向けにprocess_kprobeprocess_tracepointprocess_uprobeイベントを生成できる。

1.0リリースでは、Tetragonの安定性とパフォーマンスが改善された。このリリースの主な焦点は、Tetragonを実行する際のパフォーマンス・オーバーヘッドを大幅に削減である。Isovalent社のCTOであるThomas Graf氏は、最悪のケースのベンチマークテストにおいて、"Tetragonのプロセス実行トラッキングは、最小1.68%のオーバーヘッドを追加し、全てのプロセス実行イベントをJSONとしてディスクに書き込む場合は、わずか2.46%のオーバーヘッドしか追加しない "と指摘している。Graf氏は、このテストは6.1.13 Linuxカーネルをビルドし、標準的なユースケースよりも大幅に多いイベント量を生成することで実施されたと述べている。

このリリースでは、デフォルトの可観測性ポリシーのライブラリも追加されている。これらのポリシーは、カーネル・モジュールのロードの監視、/tmp内のバイナリ実行の検出、sshdによって開始または受け入れられた接続の監査ログ、sudo呼び出しの追跡などのシナリオをカバーしている。ポリシーの適用はkubectlを使って行う。

kubectl apply https://raw.githubusercontent.com/cilium/tetragon/main/examples/policylibrary/modules.yaml

ポリシーはそのまま使うこともでき、テンプレートやベストプラクティス・ガイドとして使うこともできる。Graf氏は、ポリシーは「特定のユースケースに有用な方法で生ログをフォーマットするための、ベストプラクティスのjqフィルター」の例を提供すると述べている。Tetragonは、軽量のコマンドラインJSONプロセッサであるjqを活用している。

TetragonはeBPFでラベルと名前空間フィルタを提供し、Kubernetesのメタデータに対する効率的なフィルタリングと、特定のKubernetesワークロードに対するポリシーの適用を可能にする。以下のポリシー・スニペットは、setuid()システムコールを監視し、プロセスがapp=sensitive-workloadというラベルを持つKubernetesポッド内で実行されている場合、それへのあらゆるコールをログに記録する。

apiVersion: cilium.io/v1alpha1kind: TracingPolicymetadata:  name: "monitoring-gaining-root-access-on-sensitive-workloads"spec:  podSelector:    matchLabels:      app: "sensitive-workload"  kprobes:  - call: "sys_setuid"    syscall: true    args:    - index: 0      type: "int"    returnArg:      index: 0      type: "int"    returnArgAction: "Post"

一致するアクションが検出されると、Tetragon はイベントを生成し、Tetragon CLI 経由でレビューしたり、追加分析のために SIEM に渡すことができる。

eBPF は、 可観測性とセキュリティ・ツールを強化するためのツールとして、着実に地歩を固めつつある。 可観測性とセキュリティ監視に eBPF を使うオープンソースの代替ツールには、PixieInspektor GadgetCorootparcaGranfa BeylaOpenTelemetry eBPF プロジェクトなどがある。

TetragonはApache-2.0ライセンスのオープンソースで、GitHubで入手できる。1.0リリースの詳細はIsovalentブログで参照できる。

作者について

この記事に星をつける

おすすめ度
スタイル

BT