システムが危険にさらされているため、ツールを介して信頼できるものは何もありません。検証済みのツール (Tripwire FIM など) を持っていない限り、最善の策は、同様のシステムを使用し、必要なものをコピーして、システムのアーキテクチャが類似している場合に実行することです。ただし、これは最適な方法ではありません。マシンが危険にさらされているため、次のステップ (法律、当局など) に応じて、フォレンジック イメージを作成し、コピーを取得して発生したことに対処します。コピーを入手したら、システムをオンラインに戻すことなどに伴うリスクを判断する必要があります。
攻撃者がどのようにしてシステムに侵入したかを特定した場合は、攻撃者が戻ってこないようにするために、その「穴」(脆弱性、構成ミス) をクリーンアップする必要があります。場合によっては、クリーン システムのインストールよりも時間がかかることがあります。しかし、「その」システムが必要だとしましょう。次のようなもので ps を再インストールできます:apt-get install --reinstall procps
同じことがlsofにも当てはまります。リポジトリが変更されていないこと、および DNS が信頼されていないリポジトリを指していないことを確認する必要があります。
ほとんどの場合、あなたの質問に答えるために:Linux ユーティリティ コマンドによって表示される情報を信頼できますか 答えは、絶対にすべきではないということです。徹底的な分析が実行されるまで、そのシステムではほとんど信頼されるべきではありません。
システムが侵害された場合、何も信用してはいけません .
通常、標準のユーティリティはほとんど正常に動作すると思いますが、攻撃者のプロセスに関連するものは省略します。ルートキットはこのように設計されているため、マシンが侵害されていることに気付く可能性は低くなります。したがって、一般に、自分のプロセスを確認することについては信頼できると思いますが、ルートキットがなくなったことを確認することについては信頼できません。
攻撃者がカーネル モジュールをロードしたり、カーネルを変更したりできる場合、システム コールと /proc
API は嘘をつく可能性があります。したがって、 ps
のようなユーザー空間ユーティリティのクリーン コピーでも 、または grep foo /proc/*/cmdline
、悪意のあるプロセスが実行されているかどうかはわかりません。価値のあるルートキットは、自身のプロセスを隠します。
システム全体のすべてのファイルは放射性廃棄物のようなものです 注意しないと、他のものを汚染する可能性があります。例えば攻撃者が /home/*/.bashrc
に何かを追加した可能性があります OS を再インストールしても /home
をチェックしない場合にシステムを再感染させる .
同様に、Web サーバーの構成や CGI スクリプトなどに厄介なものが含まれている可能性があります。バックアップと比較し、攻撃者が触れた可能性があるものは安全であると想定しないでください。
既知のクリーンなマシンで、信頼できないデータのすべてのチェックを必ず実行してください。侵害されたシステムから何も実行しない限り、問題はありません。 (つまり、cmp
を想定 と diff
脆弱性はありません。ただし、strings
に注意してください。 違う libbfd
のバージョンに応じて、信頼できないファイルでも安全 . strings -a
を使用 .
おそらく、しかし必ずしもそうではありません。攻撃者は、root アクセス権を持っていれば、いつでもプログラムを独自の変更されたバージョンに置き換えることができます.