Linuxサーバーがルートキット/バックドア/ボットネットなどからクリーンであるかどうかを確認する方法は?


9

Linuxサーバーが非常に低いセキュリティポリシー(r / w匿名のSambaフォルダー、デフォルトの管理者パスワードが設定されたFirebirdデータベースサーバー、ファイアウォールなしなど)でインターネットに1週間公開された場合、システムが完全なフォーマットと再インストールなしで妥協せず、SSH経由でリモートからのみアクセス

回答:


7

通常、ローカルチェックをchkrootkitなどのツールで推奨しますが、チェックを実行する唯一の方法がリモートで実行する場合は、代わりにルートキットハンターを試すことをお勧めします。

Rookit Hunterは、次のようなテストを実行して、ルートキットやその他のアクティビティをチェックします(詳細については、プロジェクト情報を参照してください)。

  • MD5ハッシュ比較
  • ルートキットが使用するデフォルトのファイルを探す
  • バイナリの誤ったファイル権限
  • LKMおよびKLDモジュールで疑わしい文字列を探します
  • 隠しファイルを探す

他の人が言ったように、サービスを改ざんされていないことを確認する唯一の確実な方法は、それを再構築することです。これらのツールはうまく機能しますが、成功を100%保証するものではありません。


2

OSSECはルートキットをチェックし、不審なアクティビティを検出します。


2

この答えはあなたが聞きたいものではないことは知っていますが、とにかくここに行きます。システムがクリーンであることを確認するための最良の方法は、サーバーをワイプして再構築することです。私は次のようにします:

  • コンピューターをインターネットから削除する
  • データと構成情報をバックアップしてデバイスを削除する
  • フォーマットストレージ
  • ベース/標準セットアップ/アップデートを再インストールします
  • 古いデータを参照として使用してサーバーを再構成する
  • ユーザデータを復元します

まだ読んでいないのであれば、ここから読み始めます。

[リンクテキスト] [1] リンクテキスト リンクテキスト リンクテキスト

[1]:http : //www.sans.org/reading_room/whitepapers/linux/linux-rootkits-beginners-prevention-removal_901 "Linux Rootkits Beginners"


2

また、あなたが望む答えではありませんが、システムがルート化された可能性がある場合、システムがクリーンであることを100%確認することは非常に難しい場合があります。ルートキットは検出が困難になるように設計されています。さまざまなルートチェッカーを実行してクリーンチェックアウトした場合、システムは「おそらく」クリーンです。

セキュリティが懸念される場合は、上記のように再構築するか、適切なバックアップから復元することを検討します。


1

ここで積極的に行動する必要があります。マシン上のルートキットを検出する信頼できる方法はありません。したがって、最初にルートキットがそこに到達するのを防ぎ、侵入時にそれらを検出する方法を見つける必要があります(たとえば、トリップワイヤーやロックダウンされたインターフェースを介して)。

マシンが何らかの方法で悪用されたと思われる場合は、本当に再インストールする必要があります。再インストールしない限り、マシンをクリーンアップする保証された方法はありません。はるかに安全なオプションです。


1

RKhunter、Tripwireなどは素晴らしいですが、インシデントの前にインストールされている場合にのみメリットがあります。これは、キーファイルが変更されたかどうかを検出するのに優れているためです。今すぐRKHunterをインストールして実行すると、多数のルートキットが含まれていることが検出されますが、OSまたは使用しているアプリケーションで攻撃者が開いたバックドアは検出されません。

たとえば、コンピュータに忍び込み、新しいユーザーを作成し、SSHおよびsudo権限を付与し、その後クリーンアップして、正当に見える構成をそのまま残し、ルートキットは残さないようにして、後で戻って悪を行うことができます。

最善の方法は、どのポートがサービスをリッスンしているかを調べ、次にそれらすべてのサービスの構成を調べて、それらがすべて正当であることを確認することです。次に、ファイアウォールの構成を調べ、不要なポートを受信と送信の両方でロックダウンします。次に、RKHunterなどをインストールして、スクリプトキディがルートキットを乱雑にドロップしていないか確認します。

正直に言うと、JJが提案して再構築する作業は、コンピューターが侵害されていないことを確認するよりも少ない作業です。OSや構成ではなく、貴重なデータです(セットアップの工数は別です)。

あなたよりも賢い誰かによってそれがクラックされなかったと確信することは決してないでしょう。


0

最初のステップは本当にrkhunter / chkrootkitでなければなりませんが、特定のパッケージマネージャーに組み込まれている機能(たとえば、「rpmverify」など)を使ってシステム上のすべてのパッケージを調べ、それらに含まれるファイルのMD5Sumは、ディスク上のファイルと変わりません。

コアバイナリは、実際にはRPMまたはDPKGデータベースで指定されているものと同じMD5を持っている必要があります。


-1

実行中のシステムが侵害されているかどうかを判断する最も効果的な方法は、Second Lookを使用することです。カーネルとメモリ内で実行されているすべてのソフトウェアを検証し、配布ベンダーが出荷したものと一致していることを確認します。これは、特定の既知の感染のアーティファクトを探すrkhunter、chkrootkitなどよりもはるかに優れたアプローチです。セカンドルックは、オペレーティングシステムの整合性については想定していません。そのため、インシデントの前にそれを使用またはインストールする必要はありません。

(免責事項:私はSecond Lookの主要開発者です。)

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.