Webサービス

walcartのfunction.phpのアクセス権が000になる問題の解決方法について

WordPressに、カートシステムのwelcartプラグインをインストールしたのですが、しばらく経つと、ページが表示できなくなる現象に遭遇しました。

HTTPのステータスコードは500。

どうやらプログラムがおかしいとのこと。

今回は、このトラブルの調査から対策までの一部始終を解説していきたいと思います。

まずは、現象の確認から!

通常のサーバーは、ハッキング対策でエラーの詳細な内容は公開されない設定がされています。

これでは、一体何が原因なのかさっぱりわからないので、まずはエラーを表示するところから始めましょう。

cPanelからHTTPのエラー詳細表示を有効にする。

「MultiPHP INI Editor」を起動します。

対象となるドメインを指定し、枠で囲ってあるところを有効にします。

適用ボタンを押して完了です。

これでエラーの詳細を見ることができるようになりました。

 

エラーの画面のスクリーンショットはないのですが、今回のエラーはどうやら、welcartのfunction.phpのアクセス権が「無い」というエラーログを確認しました。

FileZillaで権限を確認

FileZillaで権限を確認したところ、案の定アクセス権および所有者共に000となっていました。

アクセス権を書き換えられるのはサーバーサイドのプログラムではないかとあたりをつけ、検索して見ると、そのものズバリの検索結果がヒットしました。

ファイルのパーミッションが勝手に0000になる場合の対処法

どうやら原因は、セキュリティソフトのImunify360が、welcartのfunction.phpをマルウェアだと誤認したことにより、アクセス権を自動で変えられてしまったことが原因のようです。

Imunify360のマルウェアブロック解除と恒久対策

cPanelにログインし、セキュリティからImunify360をクリックしましょう。

Malicious files内にパーミッションが変更されたファイルを確認したら、魚のアイコンをクリックしましょう。

すると以下の表示が出るので、チェックボックスにチェックをつけたまま、「YES, RESTORE」をクリックしましょう。

これで、アクセス権が元に戻りました。

ですが、これではまたブロックされてしまいますので、ブロックする設定を解除しましょう。

右上のSettingsをクリックしましょう。

Just display in dashboardを選択し、「SAVE CHANGES」をクリックしましょう。

以上で設定は完了です。

Source:mixhost