# debsums -a, --all check configuration files (normally excluded)
ただし、tmp-dir だけでなく、あちこちに大量の一時的補助ファイルが存在します。
デフォルトでは無効にできない、Python のバイナリ .pyc ファイル約 4,000 個:
# cat /etc/python/debian_config
# standard, optimize
byte-compile = standard
等...
自分のマシンにインストールされている各ファイルを安全に検証できるオンライン リポジトリを備えた Linux ディストリビューションはありますか?
私が話しているのはパッケージマネージャーあらゆる感染を防止/検出できる最新の暗号化技術を備えたホストベースの侵入検知システムなど。
答え1
RPM ベースのシステムにはrpm -q --verify
、同様の機能を実行する があります。
しかし、これらの機能はどちらも IDS の適切な代替手段ではないと思います。主な問題は、チェックサムが問題のマシン上にあるため、マシンが侵害された場合、ローカル チェックサムを信頼できないことです。
インターネット リポジトリから最新のチェックサムを取得できるかもしれませんが、それでもパッケージ チェックサムを使用する方法は間違っていると思います。
はるかに良い選択肢は、次のような専用のファイル整合性チェッカーを使用することです。補助またはトリップワイヤーこれらのツールを使用すると、システムを正常な状態にした後でチェックサムを計算し、後で比較できるように取り外し可能な読み取り専用メディア (CD-R など) に保存することができます。
パッケージチェックサム方式のもう1つの問題は、ファイルのようなものは意図的に標準の内容から変更されることが分かっているため、チェックできないことです。AIDE/etc
のようなものでチェックサムを計算します。後これらのファイルの標準バージョンに変更を加えることで、変更が予想されていたかどうかを自信を持って判断できます。
パッケージのチェックサム検証が役に立たないというわけではありません。悪意のある変更を検出することを意図していないだけです。偶発的な変更を検出して修正するためのものです。たとえば、誰かが不器用なchmod -R
コマンドを実行し、Ctrl-C間違いに気付いてから実行する前に長時間待つ可能性があります。そのため、パッケージを検証して、どのパッケージのファイル権限が変更されたかを確認します。
答え2
私は Warren のソリューション (AIDE) を好みますが、システムを本当に監視したい場合は、CFEngine やその派生製品 (Puppet、Chef、saltstack など) を使用して、ファイルシステムのコンテンツ全体を管理します。パッケージ マネージャーを使用してファイルをインストールし、構成管理システムを使用してすべての構成ファイルのコンテンツを管理し、構成システム外で何かが変更されたときにアラートを出します (また、元に戻すこともできます)。ただし、深く掘り下げるほど、ソリューションは複雑になります。システムとその上のすべてのファイルを完全に管理するのは、非常に大きな作業です。CFEngine は、コンテンツではなく、変更があったときに通知を受け取るだけであれば、ファイルのチェックサムを学習して監視することもできます。他のツールにも同様の機能はありますが、速度は遅くなります。Puppet を使用して頻繁に再帰的なファイルシステム監視を行うことは絶対に避けてください。ただし、ツールによって学習曲線は異なります。AIDE は習得が非常に簡単ですが、CFEngine は少し難しい場合があります。