2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Qiita全国学生対抗戦Advent Calendar 2022

Day 4

マルウェアに感染したwordpressを中学生が自力で復活させた時のメモ

Posted at

初めに

マルウェアに感染したwordpressを復活させたった(* -∀-)ドヤッ♪.

マルウェアとは

マルウェア とは、不正かつ有害に動作させる意図で作成された悪意のあるソフトウェアや悪質なコードの総称。
コンピュータウイルスやワームなどが含まれる。 
悪意のコード 、悪意のソフトウェア 、悪意のある不正ソフトウェア、有害なソフトウェア、不正プログラムとも呼ばれる。
@wikipedia 

駆除の流れ

  1. wordpressのスキャンを行う
  2. 感染したwordpressのコアファイルと通常のwordpressのコアファイルの差分を確認する
  3. .htaccessやindex.phpを確認
  4. スキャン結果を元に、ファイルを見ていく
  5. 怪しいコードがあれば削除
  6. 完治しているかのテスト

wordpressのスキャンを行う

wordpressのプラグインを使用して、wordpressのスキャンを行います。
物によりますが、何時間かかかるものが多いので、その間に2番をやりましょう。

コアファイルの差分を確認

真新しいwordpressを

よりダウンロードしてきます。そして、ドキュメントルートに存在するwordpressコアファイルの差分を確認します。
スパムコードは難読化されていることが多いので、
「このコードめっちゃ読みにくいやん」
てな感じのコードがあれば、要チェックです。
参考に、よく改変されることが多いのは以下のファイルです。

wp-config.php
index.php
wp-setting.php
function.php
テーマのfunction.php
テーマのindex.php

.htaccessやindex.phpの確認

次は.htaccess(えっちてぃーあくせす)ファイルを確認しましょう。
デフォルトの.htaccessは、

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

と、なっています。このほかに自分の書いた覚えがないコードが書かれていたら要注意。

スキャン結果を元に、ファイルを見ていく

怪しいコードを探します。
難読化されたコードがあれば、要注意です。

怪しいファイルは削除

必ずバックアップを取った上で削除しましょう。
githubなんかにprivateでバックアップを取っておいて、いつでも直せるようにしておきましょう。
同時に、DBのバックアップもとっておくとなお良いです。

完治しているかのテスト

処置を行ったら、完治しているかのテストを行います。
リダイレクトチェッカーや、wordpressのスキャンサイトなどを活用して行ってください。

もし治ってなかったら?

もう一度、1から手順を踏んでみてください。
気づいていなかったコードがあるかもしれません。

もし、それでも見つからないようであれば信頼できる業者に頼むことをお勧めします。

終わりに

バックアップは命。

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?