FIM Policyで可視化する コンテナ内ファイルの変更
皆さん、こんにちは。
SCSK技術者によるSysdigブログ、第 35回は 渡邊 が担当します。
今回は2025年12月にリリースされたFile Integrity Monitoring(以下FIM)機能をご紹介します。
お客様からはよく実装有無を尋ねられる機能でしたので、今回のリリースにより選択肢が一つ増えた形になります。
本記事では、コンテナ内のファイルの変更によってアラートがトリガーされることを、シンプルな検証を通して確認していきます。
FIMとは
FIMとはFile Integrity Monitoringの略で、システムやコンテナ内の重要なファイルに対する変更を検知する仕組みです。
ファイルの内容変更や削除を継続的に監視し、不正な改ざんや意図しない変更を早期に検出することを目的としています。
SysdigのFIMと思想
Sysdigでは、起動時点で存在しているファイルに対し、内容の変更や削除といった変更を検知します。
なお、起動後に生成・更新されるファイルや一時ファイルの挙動を検知したい場合は、Falco Ruleの利用が適しています。
より技術的な背景や思想についてはSysdigからも情報が発信されているのでご覧ください。 https://www.sysdig.com/jp/blog/introducing-runtime-file-integrity-monitoring-and-response-with-sysdig-fim
Falco Ruleとの違い
Falco Ruleと比較するとFIMは設定が非常にシンプルです。
正規表現にも対応しているため、複雑なパス構成でも柔軟に指定できます。
「このディレクトリ配下は変更されたら困る」という要件に対して、素直に書ける点が特徴です。
前提条件
FIMを利用するには次の要件があります。
- Host Shield 14.3.0以降
- Universal eBPFが有効であること
Helmではインストール時に以下を追加することで有効化できます。
yaml
features:
detections:
file_integrity_monitoring:
enabled: true
FIM Policy(監視対象)の設定
Monitored Directoriesに監視したいディレクトリをカンマ区切りで指定します。
Google RE2準拠の正規表現も利用できるため、柔軟な指定が可能です。
Excluded Directoriesには検知対象外としたいものを記述します。
いざ実践
今回はnginxコンテナを起動し、設定ファイルへ書き込みや削除を行います。
<ファイルの更新>
以下コマンドで設定ファイルに追記します。
kubectl run -it --rm nginx --image nginx:latest -- /bin/bash echo 'test' >> /etc/nginx/nginx.conf
以下のように検知されました。
親プロセスを遡って表示するProcess Tree機能とも連携されており、発生原因の特定がしやすくなっています。
また、更新前後のファイルハッシュが表示されるので対象を一意に特定できる点も調査で役立ちそうです。
<ファイルの削除>
ファイルを消してみます。
kubectl run -it --rm nginx --image nginx:latest -- /bin/bash rm /etc/nginx/nginx.conf
削除も検知されていますね!
終わりに
FIMは「設定ファイルがいつの間にか書き換わっていた」「誰が消したのか分からない」といった運用上の不安を解消してくれる機能です。
本記事が、皆様のセキュアな運用を一歩進めることにつながれば幸いです。
担当者紹介
SCSK技術者ブログ
FIM Policyで可視化する コンテナ内ファイルの変更
Sysdigのサプライチェーンポリシーを試してみる
Sysdig MCP Server x Claude Desktopを試してみました【セットアップから実践まで】
Sysdig運用の基本!トラブルシューティングのポイントを解説
クラウドにおけるサーバーレスワークロードの保護:Sysdig Secureによるアプローチ
Platform Engineering Kaigi 2025 参加レポート
検知から対応をシームレスに! Sysdigの新機能「Response Action」でインシデント対応を迅速化
【SCSK技術者によるブログ】生成AIでSysdigエージェントのアップグレードを効率化 〜Helm values.yamlの移行作業を自動化〜
【SCSK技術者によるブログ】Sysdigの「Search」機能を体験!生成AIでクエリの学習コスト無しに脆弱性調査
【SCSK技術者によるブログ】ゼロトラスト文脈でのクラウドセキュリティ、そしてSysdig
【SCSK技術者によるブログ】Sysdigと組み合わせて効果的なソリューションのご紹介 ~ネットワークポリシー編~
【SCSK技術者によるブログ】生成AIで過検知対策を効率化!Sysdig Sageの実力検証
【SCSK技術者によるブログ】なぜ今、Sysdigが選ばれるのか?動画で解説!クラウドネイティブセキュリティの最前線 - SCSKの日本語伴走サポートで安心導入
【SCSK技術者によるブログ】Serverless AgentがAzure Container Appsに対応しました
【SCSK技術者によるブログ】システムコール分析における生成AIの活用
【SCSK技術者によるブログ】Sysdig情報アップデート~AWS連携にS3オプションが追加されました~
【SCSK技術者によるブログ】Falco初学者講座 - Exceptions編
【SCSK技術者によるブログ】Falco初学者講座 - List/Macro編
【SCSK技術者によるブログ】コンテナの電力消費をSysdig Monitorで監視してみよう
【SCSK技術者によるブログ】Sysdigの脅威検知はFalcoだけじゃない ~Contianer Drift編~
【SCSK技術者によるブログ】~Falco初学者に送る~ Sysdig SageでFalcoを勉強してみよう②
【SCSK技術者によるブログ】~Falco初学者に送る~ Sysdig SageでFalcoを勉強してみよう①
【 SCSK技術者によるブログ】Sysdigの設定をTerraformで管理してみた(Monitor編)
【SCSK技術者によるブログ】Falco初学者講座 - condition編
【SCSK技術者によるブログ】Sysdig Sageを使ってみた
【SCSK技術者によるブログ】Sysdigと組み合わせて効果的なソリューションのご紹介 ~ポリシーエンジン編②~
【SCSK技術者によるブログ】Sysdigをセキュアに使おう~IP Allowlist編~
【SCSK技術者によるブログ】Node ExporterをSysdig Monitorに連携してみた
【SCSK技術者によるブログ】Sysdigの設定をTerraformで管理してみた
【SCSK技術者によるブログ】CNAPPの理解とSysdigのカバレッジ
【SCSK技術者によるブログ】Sysdigの脅威検知はFalcoだけじゃない ~マルウェア検知編~
【SCSK技術者によるブログ】Sysdigのライセンス体系
【SCSK技術者によるブログ】Sysdig とMicrosoft Entra ID間でSAML認証設定を試してみた
【SCSK技術者によるブログ】Sysdigと組み合わせて効果的なソリューションのご紹介 ~ポリシーエンジン編~
【SCSK技術者によるブログ】Sysdigの脅威検知はFalcoだけじゃない ~AWSサインインなりすまし検知編~
【SCSK技術者によるブログ】Sysdig SecureのRisks機能を試してみた

