先日にお客様のホームページが突如見れなくなったと連絡。
確認してみるとindex.phpの権限が閲覧できない状態でした。
サーバーを確認してみると見慣れないファイルがチラホラ。
解決までの道のりを紹介します。

現象
WordPressを公開しているページを開いてみると、404 not Foundの状態になっていました。
WordPressの状態を確認

こちらはXサーバー上のファイルマネージャーでファイルを確認しています。
index.phpの権限(パーミッション)は000となっていて、誰もアクセスできない状態でした。
これを644などに変更すると見れるようになりました。
ただフォルダ内に見慣れないファイル、moon.phpというファイルが点在していました。

moon.phpというファイルの中を見てみると外部からアクセスできる
PHPファイルが多数配置されていました。機能しているのかと
Web上でそのファイルにアクセスしてみると・・・

こんなWebページが表示されました。
WordPressの公開フォルダーが丸裸な状態でパーミッションや編集も可能なエクスプローラーが
Web上で表示されていました。
moon.phpの他にもt2.phpも同様の機能のファイルでした。
他にはあちこちに6桁の英数の名前がついたフォルダーが存在していて
同じくパーミッションは000とアクセスできない状態でした。
WordPressの修復
WordPressのバックアップ機能やフォルダーのコピーは全て諦めて
手作業で仮のサイトに移植しました。
余計なファイルが混入しないようにこれが一番と思いました。
その後に仮サイトでデザイン等に問題が無ければ、本番サイトを全て消して
また手作業で復元していきました。
消せないファイルやフォルダはパーミッションを644にすることで簡単に消すことが出来ました。
WordPressの対策

まずはPHPのバージョンを現在推奨されるバージョンに変更しました。
今回はかなり古いPHPを使っていたのでそれが原因と思われました。
その他にもWordpressの本体の更新、テーマやプラグインも全て最新バージョンにしました。
まとめ
WordPressで色々なホームページを作ったりこだわりデザインにすればするほど
テーマファイルを直接編集していたりします。
WordPressやテーマの更新時に崩れてしまう原因になりますが、
更新前にしっかりバックアップ等を行い、定期的にアップデートが必要だと感じました。
コメント