【ワードプレス】.htaccessを増やしていくウイルス vs SSHの戦い方メモ

目次

はじめに


福岡のホームページ制作・SEO対策の株式会社スゴヨクです。


2024年に入ってから、ワードプレスを運用しているサーバーがまるごとウイルスに侵入されてしまうということが何度か(何度か……泣)あって、その際に対応したことをメモとして残しておこうと思います。

はじめにウイルスに侵入されたときには、サーバー内で運用しているサイトの規模が大きかったためサーバーの移行という対処法を取りました。

→【ワードプレスにウィルス侵入?改ざんされた?「.htaccessとindex.php他もろもろ」】はこちらから

2回目以降はウイルスの動向がおおむねつかめてきたので、SSHを使用して削除していきました。今回はこのSSHでのウイルスとの戦い方について、再戦があった場合の自分へのメモとして書いていきます。


ウイルスがやっているっぽかったことをざっくり

FTPから確認できたこと

参考程度にですがこちらでざっくりと把握できたことを羅列していきます。あくまでざっくり、こういう悪さしてるっぽいなというものです。

・.htaccessに特定のファイル以外へのアクセスを禁止するようなコードが記述されている

・そしてその.htaccessがサイト内の各フォルダに設置されている(各フォルダに……泣)

・index.phpに不正なコードが記述されている

・moon.php/about.php/style2.php/doc.php/Simple.phpなどなどの不正なファイルが各所に設置されている

・これらの不正なファイルを書き換え/削除できないようにパーミッションが444に設定されている


↓.htaccessの不正な記述



↓index.phpの不正な記述




ワードプレスの管理画面に入れたら

ウイルスの増殖具合にもよりますが、サイトにアクセスすると真っ白な画面が表示されるか、怪しいサイトに飛ばされてしまうか、危ないからGoogleがブロックしましたよという画面が表示されるかという状況でしょうか。

上記の不正なファイルを削除したり不正なコードを取り除いたりしていくと、一時的にワードプレスの管理画面に入れるようになります。

そのときには恐らく以下のような悪さを確認できます。

・既存のプラグインに似せた不正なプラグインが追加されている(ワードプレスの管理画面ではなくFTPで確認しないとわからない場合もあるそうです)

・知らないユーザー(メールアドレスが123@abc.comなど)が追加されている



ひとまず知らないユーザー・プラグインは削除しましょう。

プラグインはできることなら一度すべて削除して、ウイルスたちの削除が済んでから再度公式のものを追加していくほうが確実です。

ユーザーに関してはパスワードの再設定・デフォルトのログイン画面を使わない・wp-adminから自動でログイン画面へリダイレクトさせないなどの対処が有効です。

ウイルスの削除後にSiteGuard WP Pluginなどのセキュリティ対策プラグインを活用しましょう。



SSHでの戦い方

参考にしたサイト

FTPで不正なファイル・コードの検索と削除を行うと、処理にかなり時間がかかってしまうためその間にウイルスが増殖してしまいます。

他にもっとよい策はないかと思って、同じようにワードプレスに侵入してくるウイルスに対応した記事を調べていくと、SSHを使用してどんどん削除していく方法をちらほらと見かけました。

その中でも一番頼りにさせていただいたのがこちらの記事です。


【WordPressを運用中のサーバがまるごとPHPマルウェアに感染していた時の対応メモ】

https://qiita.com/Ayutanalects/items/a359df4e4b445229fcf2


いざこちら↑の記事の対処法を採用させていただこうということになったときに、SSHを普段使いしているわけではないので、そもそもの接続方法で詰まってしまいました。そのときに参考にしたのがこちらの2つです。


【XSERVERにPuTTYでssh接続】

https://blog.arashichang.com/xserver-putty-ssh/


【SSHクライアントソフトによる接続方法(PuTTY/Tera Term)】

https://rakkoserver.com/knowledge/2999


それから、実際にSSHを使用してコマンドを入力していく際に文字列検索について参考にしたのがこちらの記事です。


【grepでこういう時はどうする?】

https://qiita.com/hirohiro77/items/771ffb64dddceabf69a3



SSHでウイルスと戦っていきます

SSH接続の準備が整ったら、いよいよコマンドを入力して検索・削除を行っていきます。

この時に重要なのは、先ほどの【WordPressを運用中のサーバがまるごとPHPマルウェアに感染していた時の対応メモ】に記載されていた、
.htaccessだけを修正しても、index.phpに書かれたコードの処理で「サイトに誰かがアクセスしてきたら」.haccessが不正なものに上書されるので、必ずindex.phpを先に始末すること。
という点です。


実際に活用したコマンドは以下の通りです。もちろんバックアップをしっかりとってから駆除作業を行ってください。

①タイプ:ファイル、ファイル名:「~~index.php~~」、パーミッション:444 を検索

find . -type f -name “*index.php*” -perm 444

あまりにも多かったので盛大にすべて削除(②のコマンドを参照してください)

ワードプレスデフォルトのものも削除しているので、サイトに表示されるエラーを確認しながら公式のクリーンなものを適宜追加

②タイプ:ファイル、サイズ:420、ファイル名:「.htaccess~~」 を検索して削除、削除時にファイル名を表示(念のため)

find . -type f -size 420c -name “.htaccess*” | xargs -t rm

③「about.php|radio.php|index.php|conten」の文字列をテキスト内に含むファイルを検索(.htaccessで挙げられていたファイル名を参照)

grep -lri “about.php|radio.php|index.php|conten” ./*

表示されたファイルの中身を確認して適宜削除

④30分以内に更新のあったファイルを検索

find . -mmin -30


これらのコマンドを組み合わせたり、ファイル名・ファイルサイズ・パーミッションなどの検索条件を調整したりしながら、3人体制でSSHの操作・ファイルの中身確認及び削除・必要なファイルの再UPを行っていきました。

SSHの操作にはここにはとても書ききれない正規表現やコマンドの知識が必要になるので都度調べてみてください。


余裕が出てきたら、サーバーのアクセスログを確認してみるとなおよいと思います。ウイルスたちがどのファイルにアクセスしようとしているのかが分かるので、どのファイルを削除するべきか、また無事に削除ができているかを照合することができます。また、これらの不正なファイルにアクセスしようとしているIPアドレスの拒否設定を行うのも有効です。



おわりに

この記事を読んでいる方は現在進行形でウイルスと戦っていらっしゃるでしょうか。ご検討をお祈りいたします。すこしでも参考にしていただけましたら幸いです。



よかったらシェアしてね!
  • URLをコピーしました!
スゴヨクン
この記事の執筆者
スゴヨクン

成果主義Webマーケター見習い。
SEOから広告運用、アクセス解析まで「売れる仕組みづくり」を魔法のように研究中。
難しい用語もやさしく噛み砕いてお届けします。
「スゴくヨクなる」ヒントを、今日もあなたに。

株式会社スゴヨク 川上晋平
この記事の監修者
川上 晋平

株式会社スゴヨクにてマーケティング戦略の立案から実行までを統括。中小企業やスタートアップ向けにWeb広告運用、LP制作、SEO対策など幅広い支援を行っており、これまでに100社以上のデジタル施策をサポート。現場の視点とデータに基づいた分析力に定評があり、確かな実績と最新の知見に基づいた監修を行っています。
■資格:
Google アナリティクス認定資格
Google 広告の検索広告認定資格
Google 広告「ディスプレイ広告」認定資格


CONTACT US

CONTACT US お問い合わせ・ご相談

お見積り・ホームページ制作・運用、広告に関するご質問まで、
どんなことでもお気軽にご相談ください。
日・祝日・休業日以外は24時間以内に返信いたします。

目次