eBPF」の日本語翻訳です。eBPFという講演を行います。Securityオープンソースプロジェクトを開始します。Traceeはほとんどの開発者が日常的に行う必要のないツールですが、コンテナセキュリティ実装の詳細に関心がある人にとっては役立つツールです。eBPFは、カーネル内でカスタムプログラムを実行できるカーネル技術です。通常、bpftraceなどの強力な可観測性ツールに使用されます。TraceeはコンテナイベントにフォーカスするeBPFを使用してシステムコールなどのイベントをトレースすることは新しい試みではありません。Superpowers」で、私のライブコーディングによるサンプルをご覧いただけます。Greggのような巨人の肩の上に立っているような気持ちになりました。Traceeはホストで実行されている他プロセスからのイベントに煩わされることなく、コンテナ内で生成されたイベントのみを表示することができます。ご存知のように、ホストマシンから見るとコンテナは実際にはただのLinuxプロセスにすぎません。コンテナ化されたプロセスと通常プロセスに違いがない場合、Traceeはイベントがどのコンテナから来たかを、どのように検出できるのでしょうか?コンテナは通常、独自のプロセスID(PID)名前空間で開始されます。1を持っているように見えます。Traceeは実行中の新しいバイナリを監視し、プロセスのPID名前空間の観点からプロセスIDをチェックします。IDが1であると思われるプロセスが見つかると、Traceeはそれが新しいPID名前空間内の最初のプロセスであることを認識してトレースを開始します。同じPID名前空間を共有する他のプロセスもトレースされます。pod内の他のコンテナをキャッチします。このアプローチは、既存の(既に起動している)コンテナがトレースされないことを意味します。コンテナを検出するためには、最初にTraceeを実行してからコンテナを起動する必要があります。Agmanによって作成され、現在は実験中です。カーネルがプロセスに必要な機能があるかどうかをチェックするcap_capableなどの他のイベントと同様に、最も一般的なシステムコールのトレースをサポートします。Traceeの利用方法と出力例については、GitHubのREADMEをご覧ください。たくさんのフィードバックをお待ちしております。LABの情報を逃さずチェックしよう!メールアドレスを登録すると記事が投稿されるとメールで通知します。※登録後メールに記載しているリンクをクリックして認証してください。LABの情報を逃さずチェックしよう!メールアドレスを登録すると記事が投稿されるとメールで通知します。※登録後メールに記載しているリンクをクリックして認証してください。