web-dev-qa-db-ja.com

サーバーでバックドアを見つけますか?

UbuntuサーバーでのIT作業のために、私は誰か(フリーランス)を雇ったとしましょう。サーバーには優れたファイアウォールがあり、毎週clamav、chkrootkit、およびrkhunterスキャンを実行し、優れたプラクティスを維持するようにしています。

問題は、マシンにバックドアがインストールされていると思われる場合、どのように検索するでしょうか。彼はrootアクセスと十分な時間を持っていたので...

このテーマについてはすでに説明しましたが、ほとんどは実際的な答えというよりは理論的なものでした。

注:これはリモートサーバー上にあるため、ハードウェアベースの分析を行うことはできません。

@ tlng05の要点をさらに詳しく説明すると、ルートキットの作成者は専門家であり、多くの場合数十年の経験があります。あなたがルートキットとの戦いに数十年の経験がない限り、彼らはあなたがするよりも多くの隠れ場所について知っています:P

ルートキットがあると思われる場合は、システムをワイプするしかありません。これは、古典的な例です Ken Thompsonによる信頼の信頼に関する考察 「エクスプロイトを見つけることができないため、人々を信頼する必要があります」。

次回は、誰にrootアクセス権を与えるかについてより厳格にすることをお勧めします。

8
Mike Ounsworth

それは攻撃の複雑さに大きく依存します。単純なバックドアの場合は、次の方法でバックドアを検出/削除する可能性があります。

1。

netstat -antp

送信ポート/プログラムを検索し、pid + ipを覚えておいてください。

2。

lsof -p <the pid>

出現している金型を調べます。 (これらは送信プロセスで使用されるファイルです)

3。

  • これらのファイルを削除してみてください
  • 経由でIPをブロックします。 iptables( チュートリアル
  • すべてのユーザーのパスワードを変更する
  • 祈る

これは[〜#〜] [〜#〜]であり、バックドアを削除するための保証された方法ではないことに注意してください。 tlng05既に述べたように、最も安全な方法は重要なファイルをバックアップしてシステム全体を消去することです。 (私もそうすることを強くお勧めします)

2
licklake

実行中のサーバーのメモリをダンプし、 volatility を使用して分析を行うことができます。このサーバーが再起動していない場合、既存のモジュールを使用して、コマンド履歴、奇妙なプロセス、ネットワーク接続などの興味深いものが見つかることがあります。これは長い話であり、これを行うためのトレーニングスキルであるため、詳細については説明できません。

実際、法医学チームの人々は、このような同様のツールを使用して、インシデントとIRチームを調査しています。

1
vdchuyen