web-dev-qa-db-ja.com

サーバーが危険にさらされている可能性がある-c99madshell

ですから、見よ、私たちがクライアントのためにホストしてきたレガシーサイトには、誰かが恐ろしいc99madshellエクスプロイトを私たちのWebホストにアップロードできるバージョンのFCKEditorがありました。

私はセキュリティマニアではありません。率直に言って、私は人員の喪失により現在S/A業務を担当している開発者です。したがって、サーバー障害者がエクスプロイトによる被害を評価する際に提供できる支援があれば幸いです。

あなたに少しの情報を与えるために:

ファイルは、Webルート内のディレクトリ「/ _img/fck_uploads/File /」にアップロードされました。 Apacheユーザーとグループは、ログインできず、サイトにサービスを提供するディレクトリの外部で権限を持たないように制限されています。

すべてのファイルに770のアクセス許可(ユーザーrwx、グループrwx、その他なし)がありました。修正したかったのですが、「高優先度」ではなかったため、保留するように指示されました(これで変更されることを願っています)。したがって、ハッカーはスクリプトを簡単に実行できたようです。

今、私は実際にc99madshell.php自体を見つけることができませんでした-ロシア語のテキストを含む他のHTMLファイルの束と、インラインPHPのレンディションであるいくつかの.xlおよび.htmlファイルのみマッドシェルハックですが、少し調べてみると、ハックは実行後に自分自身を破壊しているように見えます-素晴らしいです。

とにかく、私の最初の評価はこれです:

  • ホスト全体を再構築する必要はありません。Apacheユーザー/グループが分離されているため、システムレベルのパスワードを取得できなかったはずです。

  • アップロードに実行権限がないように制限し、FCKEditorのバージョンを更新して元のエクスプロイトターゲットを修正し、PHPスクリプト内のスクリプトの実行を拒否するサーバーレベルの構成を追加することにより、この脆弱性を修正する必要があります。アップロードディレクトリ。

  • アプリのDBパスワードを変更する必要があります。データベース接続の構成ファイルがweb-root内にある場合、ハッカーはそれを取得してDBパスワードを取得した可能性があります。

とにかく、私が上司に何を言うべきかについてあなたたちが持っている入力を提供してください。明らかに、ホスト全体の再構築を回避するのが理想的ですが、ハッキングされたマシンを実行していないことを確認するためにそれを実行する必要がある場合は、それが実行されます。

皆さんの助けに本当に感謝しています。また、遠慮なく詳細をお尋ねください(コマンドを実行したり、被害を評価するために皆さんと協力したりできれば幸いです)。なんてこったハッカー:(。

1
Skone

明らかに、他の人が言っているように、公式の「安全な」対応は、マシンを再構築することです。

状況の現実はそれを妨げるかもしれません。妥協点をチェックするためにいくつかのことを実行できます。

  • Chkrootkit -サーバーが危険にさらされている一般的な兆候をテストします
  • Rpmシステムの場合、「rpm -Va | grep 5」は、インストールされているすべてのrpmバイナリをチェックし、MD5の合計が変更されている場合は「5」を報告します。カスタマイズされたバイナリで説明されていない不整合を見つけた場合は、再構築が必要です。
  • / tmpで疑わしいものがないか調べます。
  • 異常なプロセスがないか「psfax」を確認してください。 'ps'が危険にさらされている場合、または他の手法を使用している場合でも、非表示のプロセスが実行されている可能性があります。
  • 検索でApache以外の所有権を持つファイルを見つけた場合は、システムアカウントが確実に侵害されているため、再構築が必要です。

システム構成で行う修正:

  • 可能であればFCKeditorによるアップロードを無効にする
  • プログラムがそれらから実行されるのを防ぐために、一時ディレクトリがNOEXECになっていることを確認してください
  • すべてのphpスクリプトは最新である必要があります
  • Phpスクリプトの実行時にエクスプロイトを探すためにmod_securityをインストールしたい場合

私が見逃しているものはたくさんありますが、それらは私が取る最初のステップです。サーバーで実行しているものとそのセキュリティの重要性(CCトランザクションを処理しますか?)によっては、再構築が必要になる場合がありますが、「低セキュリティ」サーバーの場合は、上記を確認しても問題ない場合があります。

4
Dave Drager

ホストを再構築する必要があります。彼らがホストに対してどのような種類の特権昇格攻撃を使用したかはわかりません。また、トロイの木馬、キーロガー、またはルートキットがインストールされていないことを絶対に確信することもできません。

一度妥協すると、ベアメタルから再構築する以外に選択肢はありません。

3
Zypher

つまり、サーバーを再構築します。

ローカルユーザーにアクセスできる場合(現在はApacheユーザーとしてアクセスできます)、ローカルエクスプロイトを実行できます。したがって、サーバー全体が危険にさらされていることを考慮する必要があります。他のサーバーも確認する必要があります。

どのディストリビューションを実行していますか? rpmベースの場合は、ファイルの署名を確認できます。インストールCDを起動し、rpm-Vを実行してパッケージを確認します。

3

まず第一に。危険にさらされたサーバーを決して信用しないでください。

あなたがthinkマシンを保護したとしても、スクリプトキディは愚かではなく、バックドアがインストールされている可能性があります。シェルを取得した後、ユーザー/グループはほとんど違いがありません。

ファイルをバックアップし、すべてのパスワードの変更を実装します。

2
hkb

聞きたくないことは承知していますが、データのバックアップ、サーバーの再構築、すべてのデータの再インポートをお勧めします。

また、他のサイトをチェックして、ハッキングの影響を受けたのはこのサイトだけではないことを確認してください。すべてのサーバーのスクリプトが1人のApacheユーザーとして実行されている場合(nodoby/www_data/what-ever-your-distro-uses)1つのサイトに書き込むことができるものはすべて、ほぼ確実に残りのサイトにも書き込むことができます。

すべてのパスワードを変更するだけでなく、サーバー上のSSHキーが他のすべてのサーバーで無効になっていること(つまり、秘密キーを削除するだけでなく、保存されている場所で公開キーを取り消す)、および他のシステムがあることを確認します。そのサーバー上/経由でパスワードが変更されたためにパスワードを入力した(またはファイルにパスワードを保存した)。

1
David Spillett