全サイトでForbiddenが表示される致命的なケース

|

通常の403 Forbiddenエラーの場合、以下のように表示されることが多いと思います。

Forbidden

You don't have permission to access this resource.

これは通常、.htaccessにて、サイト運営者によってアクセスが拒否された際に表示されることが多いです。

けれども、先日、管理サイトの1つにて、いつもとは違うForbiddenエラーが表示されていました。

Forbidden

You don't have permission to access this resource.Server unable to read htaccess file, denying access to be safe

おかしいな?と思いつつ、.htaccessを確認してみたのですが、deny fromなどでアクセスを拒否するような設定は何もしていません。

そこで改めてエラー内容を読んでみますと、「Server unable to read htaccess file」と書いてあり、これはつまり、サーバーが.htaccessファイルの中身を読み取ることができないため、安全のためにアクセスが拒否された意味になります。します。

つまり、.htaccessに書かれている内容で拒否されているというわけではありません。

一方で、パーミッションで.htaccessへの読み込みを拒否しているわけでもなかったため、これはサイト運営者側ではなく、ウェブサーバー側でアクセスを拒否していることを意味します。

同じサーバーに設置している他のサイトも確認してみたところ、同じように上記のForbiddenが表示されていました。

そこで、運営会社に問い合わせようと思ったのですが、メールアカウントを確認してみますと、「サイトが改竄されて踏み台にされてるので、サーバーアカウントを凍結しました」との内容のメールが来ていたようです。

つまり、CMSが不正にアクセスされて改竄されてしまい、サーバー内に設置している全てのサイトが書き換えられる結果になっていました。

よく見てみますと、おかしなコードが多数挿入されており、ファイル自体が削除できなくなったりもしており、複数の侵入口が作られる結果になってしまいました。

一応、データベースやHTMLファイル、メール、アクセスログなど、全てクリーンな状態にはしましたが、削除できなくなったファイルなどもあり、もはやそのサーバーごとは移転するしかありません。目視で不正なコードを一つ一つ削除していったとしても、また再度、改竄される結果になるはずです。

結論としては、上記のForbiddenエラーが発生した場合、そのサーバーはもう諦めざるを得ないという結果になります。

そのため、ファイルをクリーンにしてから移転することをおすすめします。