警告プログラムの引数の伏字化
警告が発生すると、プロセスの引数によって渡される機密情報が含まれる場合があります。たとえば、mysql -p=apassword
によるパスワード、または docker run -e AWS_SECRET_ACCESS_KEY=asecretkey
によって開始された Docker コンテナなどです。これを防ぐために、Sophos Linux Sensor (SLS) には、プログラムの引数から伏字化する情報の正規表現を提供する方法があります。
このガイドでは、基本的な使用方法について説明し、使用例をいくつか紹介します。対応している正規表現の構文の全容は、Go 正規表現パッケージのドキュメントを参照してください。
警告プログラムの引数の伏字化の例
プログラムの引数の伏字化は、すべての出力ソースに適用され、次の方法で簡単にオンにできます。
alert_output:
redaction_regexs:
- "--password=(.*)"
- "AWS_SECRET_ACCESS_KEY=(.*)"
outputs:
- type: stdout
enabled: true
この例では、上記の mysql パスワードと AWS シークレッキーの使用例をとって、--password=apassword
と AWS_SECRET_ACCESS_KEY=asecretkey
が、それぞれ --password=**********
と AWS_SECRET_ACCESS_KEY=**********
になるように警告を変更します。
センサーは、できるだけ多くのデータを保持するために正規表現のキャプチャグループを使用しますが、AWS_SECRET_ACCESS_KEY=asecretkey
全体を伏字化する場合は、代わりに次のように入力します。
alert_output:
redaction_regexs:
- "--password=(.*)"
- "AWS_SECRET_ACCESS_KEY=.*"
outputs:
- type: stdout
enabled: true
これによって、サンプルの警告は、--password=apassword
と AWS_SECRET_ACCESS_KEY=asecretkey
から、それぞれ --password=**********
と **********
になります。
警告プログラムの引数の伏字化のエラー
正規表現のいずれか 1つが有効でない場合、SLS はそれを致命的なエラーとして扱い、起動しません。コンパイルに失敗した正規表現と、対応するエラーメッセージが表示されます。
Sophos Linux Runtime Detections Agent version 5.0.0.28 (Build: 1917)
INFO[0000] fetching metadata
INFO[0000] fetched metadata
...
INFO[0002] Starting Embedded Analytics
FATA[0002] Unable to start analytics: Invalid Redaction Regex `AWS_ACCESS_KEY=(.**)` -- error parsing regexp: invalid nested