2021-12-17に更新

使ってないWordPressからWebサイトをグチャグチャにされかけた件

概要

昔試しにデプロイしてそのまま忘れていたWordPressに不正アクセスされ、自分の運営するWebサイトをグチャグチャにされかけた。

発端

ある日突然、自サイトのトップページが真っ白になり何も表示されなくなった。
自サイトはPukiwikiメインで動いており、この時は「またPHPか」と思っていた。

最初にした対処(勘違い)

レンタルサーバーの現在のPHP環境を見たら、PHP5ではなくPHP7を推奨していた。ここで自分は、今のサーバーはPHP5の扱いが終了したのだと思った。
ダメ元でPukiwikiの最新版を取りに行ったら、PHP7対応版が公開されており、その一式をダウンロードして、とりあえずまるごと差し替える事で無事Pukiwikiが表示された。
細かい設定や独自に入れたPluginは全部上書き初期化されてしまったが、もうサイトの維持に疲れていたので、制作物とかはGithubに移動し、可能な限り縮小していくことを決めた。なのでテキストとかが取り出せればいいやと思っていた。
また、この機会にShift-JISとEUC-JPとUTF8が混在していたのを全部UTF8に統一し、SSL/TLS対応もした。

疑問

デフォルトのPukiwikiのページ下部には使用しているPHPのバージョンが出るのだが、「PHP 5.6.24」と表示されていた。「PHP7になったから動かなくなったのでは?」と疑問に思ったが、まあ今動いているからいいかと思った。
また、今回の更新作業のためにWebサイトのデータ一式をダウンロードしたが、いくつかのphpファイルがウイルス判定されていた。なんでphpファイルがウイルス判定?と思い、エディタで開こうとしてもWindowsが開く事を拒否する。誤検知だと思ってそのままにしていた。

確実におかしい事に気付く

20年間付き合ってきた自サイトなので、中身はかなりゴチャゴチャしていて、整理はかなり難しい状況だったが、それでも明らかに使ってないファイルは消していこうとしていた。
その中で、そんな名前のファイル自分は作らないぞ!?といったファイルや、100k超えのphpファイルが目についた。
レンタルサーバーの提供する機能でブラウザ上でサーバー内のファイルを直接扱えるサービスがあるので、それでphpファイルを開いたら、デコードされた読めない内容が展開されたので、やっと何かがおかしいと気づいた。

調査

様子がおかしいphpファイルはいくつかあったが、「wp-」で始まるファイルが多かったので調べたところ、WordPressのファイルだった。WordPressなんか入れた覚えないぞ・・と思ったが、サイト更新を楽にしようといろいろ試していた時は確かにあり、もしかしたらWordPressも入れてみた事があるのかもしれない・・・
そして、WordPressはかなり攻撃を受けやすく、常に最新版に更新する必要があるとの事。WordPressに不正にログインされると何が起こるのかも、調べた結果と自分の状況が一致していた。
自分が入れたWordPressはどこからもリンクされていないが、おそらくURL決め打ち+脆弱性を突かれてアクセスされ、各所にファイルを作られたり、書き換えられたりしていた。

被害

  • index.phpを書き換えられていた
    これでTOPページが真っ白になっていた。数十回に1回は詐欺サイトに飛ばされるタイプもあるとの事で、何回かリロードしてたら飛ばされたのかもしれない。
  • .htaccessを書き換えられていた
    ガバガバにされてた。
  • 知らないphpファイルを各所に作られていた
    デコードされていてすぐに読めないものが大半。中身が空のものもあった。

サーバー運営からは何も怒られていないので、大量にメールを誰かに送るとかはしていないと思う。

対処

  • 勘違い対処で最新のPukiwikiと差し替えた事で、Pukiwiki関係のphpは修正された状態。
  • WordPress関係のファイルを全部削除した。そもそもWordPressは入れただけで全く使ってなかったので、まるごと消すだけでよかったのは楽。
  • .htaccessを修正。古いWebサイト一式のバックアップがあったので、それを使用した。
  • phpファイルを検索し、怪しいファイルを全部削除した。
  • その他、使ってないCGIも全部削除。

最後に

今回の件や、php更新されてスクリプトが動かなくなる等の突然の悲しい作業が降って湧くのがきつく、最近は個人でのWebサイト運営に限界を感じる事が多くなってきています。
Webサイト運営は手段であってこれ自体が趣味とかではないので、自分で決めてない作業に時間をとられたくないです。まあこの機会に制作物をgithubにまとめられたのはよかったと思います。
いまはPukiwiki入れてますが、これすらもやめて、最終的に静的なHTMLを置くだけにしたくなっています。

ツイッターでシェア
みんなに共有、忘れないようにメモ

uskz

自分のために書いていきます

Crieitは誰でも投稿できるサービスです。 是非記事の投稿をお願いします。どんな軽い内容でも投稿できます。

また、「こんな記事が読みたいけど見つからない!」という方は是非記事投稿リクエストボードへ!

有料記事を販売できるようになりました!

こじんまりと作業ログやメモ、進捗を書き残しておきたい方はボード機能をご利用ください。
ボードとは?

コメント