web-dev-qa-db-ja.com

趣味のWebサーバーへの侵入が疑われる場合の対処法

私は自分のファイルをホストするサーバーと、趣味や友達のための多くのWebサイトを維持しています。私のドメインの1つについてGoogleに返されるサイトの概要がすべてポルノ関連であることに気づきました(検索 "fringe.org"、最初の結果)。

ソースを確認したところ、難読化されたphpコードが見つかりました( こちらを参照 )<\/html>の後のそのドメインの/index.phpに含まれていることを認識できませんでした。私はそれを削除し、それを見つけて、私のWebルートにある他の5つのドメインのindex.phpからも削除しました(ただし、3つまたは4つはありませんでした)。

サーバーの詳細:

  • Ubuntu 10.10のLAMPは非常に定期的に完全に更新されます
  • PHPinfo: リンク
  • 私のパスワードは非常に安全ですが、3〜4人の友達にWeb書き込みアクセスのアカウントを与えています。彼らのパスワードがどれほど安全かはわかりません。
  • アクセスはsshまたはsftpのみであると思います

私の質問は、私が今とるべきステップです。データとコンテンツはサーバーから定期的にバックアップされます。汚れているので、全体を消して再構築する傾向がありますが、私は最大のサイトの大きな年次イベントから10日間です。

ヒントをありがとうございました。


まあ...たわごと。フィードバックと情報をありがとう。最近、トラブルに巻き込まれるのがいかに簡単かは難しいです。できれば、すべての回答を承認済みとしてマークしましたが、すべて役に立ちました。私はフルワイプを行い、慎重にできるだけ早く再構築します。

16
Sam Swift

PHP:

  1. allow_url_fopenをオフにする必要があります。これがあなたが所有された方法だと思います。大きな間違い!
  2. display_errorsをオフにする必要があります。私はパスの開示を見つけるために常にこれらを使用しています。
  3. file_uploadsをオフにする必要があります。これはあなたが所有する別の方法であったかもしれません。
  4. exposed_phpをオフにする必要があります
  5. safe_modeをオンにする必要があります
  6. magic_quotes_gpcはおそらくOnに設定する必要があります

これらは深刻な問題です。 LFI/RFIボットネットに襲われた可能性が非常に高いです。新しいサーバーをインストールする必要がありますが、コード、データベースからのデータ、またはフラットファイルをコピーしないでください(パスワードを再利用しないでください-この時点ではすべて疑わしいです!変更する責任があります。すべてのパスワードと同じことをユーザーに伝えます)。

この攻撃の深刻さを思い出させてください。サーバー上のPHPコードまたはその他のコンテンツのいずれかに、他のバックドアが含まれている可能性があります(含まれている可能性があります)。このインシデントの前にファイルの整合性監視を実施していなかった場合は、このPHPコードとコンテンツを含まない新しいサーバー。単にコピーすることはできません。すべて手動で再作成する必要があります。

次に、MySQLなどのデータベースを使用する場合、データベース内のデータを信頼できません。 MySQLデータファイルをコピーしたり、同じデータレコード、列、テーブルを新しいマシンに利用したりすることはできません。このすべてのデータは、設置された新しいマシンを乗っ取り、このデータベースに接続されているWebサイトにアクセスしたり、このデータベースのデータを使用しているユーザーにマルウェアを送信したりする能力があると見なす必要があります。

最後に、/ etc/passwdや/ etc/shadowファイルなどの重要なファイルを含め、すべてのフラットファイルも信頼できません。このデータを再利用することはできず、すべてのパスワードが疑わしいものです。データベースのパスワードも疑わしいです。

このマシンからSSHでアクセスしたことがある場合は、これらのリモートアカウントが侵害されていることも考慮してください。 LAN上の任意のマシンへのローカル接続がある場合-それらのマシンも同様に危険にさらされていると考えてください。 PHP他のサービス(外部データベースなど)に接続するファイル)のパスワードもすべて侵害されたと見なす必要があります。すべてを再構成する必要があります。バックアップから復元することはできません!

あなたは非常に深刻な問題に直面しており、おそらく外部の助けを借りる必要があるでしょう!

10
atdre

同様の(しかしより深刻な)妥協を経験した後、私はatdreが正確に正しいと言うことができます。セキュリティの侵害に対処するには、4つの基本的な手順があります。

  1. シャットダウン:すべての侵害されたシステムをシャットダウンします。この時点では拭かないでください。
  2. Analyze:感染したシステムのデータを無菌環境で使用して、最も近い原因と範囲を特定します。この時点でセキュリティコンサルタントを雇うことを強くお勧めします。
  3. 開示:影響を受けるユーザーにエクスプロイトの性質と結果、およびエクスプロイトについて何をすべきかを伝えます。これは害を及ぼすでしょうが、あなたがそれを行わなければなりません
  4. 回復:侵害されたシステムを宇宙から核攻撃します。つまり、OSを完全に再インストールするか、可能であれば、まったく新しいシステムを起動します。システムからデータを回復する必要がある場合は、攻撃時のpredateのバックアップを使用してください。危険にさらされる可能性のあるデータは使用しないでください。あなたがそれをきれいにできると思うなら、あなたは間違いなくできません。新しいシステムに再接続する前に、ステップ(2)で発見したセキュリティの脆弱性を修正し、他の考えられる脆弱性について慎重な監査を行ってください。

より完全な答えは次の質問です。それは私自身の必要な時に私を大いに助けました。

https://serverfault.com/questions/218005/my-servers-been-hacked-emergency

4
Rein Henrichs

1)すべてのライブラリ、モジュール、およびアプリケーションが完全に更新されていることを確認します。

2)FTPの使用を停止します。 FTPログインをスニッフィングして拡散するワームがあります。

3)実行 PHPSecInfo

4)mod_securityのようなWebアプリケーションファイアウォール(WAF)の使用を検討してください。

5)偶然に、攻撃者またはバックドアにアクセスしている誰かのIPアドレスを取得できる場合。 FBIに報告する。 (WAFはこれに役立ちます)

(ボーナスポイント:バックドアを、IPアドレスをログに記録する単純な.phpスクリプトに置き換えます。誰かがヒットした場合は、fbiのIPがあります)

2
rook

マシン全体を拭いてください。攻撃者は、サーバーにアクセスして、一部のファイルを変更することができました。彼はおそらく任意のコードを実行できるでしょう。残念ながら、ローカル権限昇格のエクスプロイトは多数存在する傾向があります。適切に最新のマシンshouldremoteの悪用はありませんが、localユーザーに対するセキュリティを信じるのは少し素朴です。ユーザーの1人がハッキングされた可能性があります(パスワードが推測されたか、または彼のローカルマシンがハッキングされ、攻撃者がSSHセッションを追跡した)。

その結果、攻撃者がルートキットをインストールした可能性があります。ルートキットは、マシン自体から検出するのが非常に困難です(ルートキットはそれ自体を非表示にするように設計されています)。したがって、推奨ワイプ。

何が悪いのでしょうか?毎年恒例のイベントに合わせて大きなサイトを最適に再構成できなかったことは?それとも、サイトがそのイベントの最中に突然ポルノフェストに変わったということですか?

2
Thomas Pornin