当社はIT技術のオンライン教育を得意としたセミナー専門会社です。 | 一戸英男

ITエンジニアの技術力UPをお約束します。

最新WORDPRESSマルウェア感染事情

最新WORDPRESSマルウェア感染事情


WORDPRESSのマルウェア感染は、年々酷くなっているように感じています。これは政府のセキュリティへの関心を促す動きとは逆行していますが事実です。セキュリティへの関心はサイトを運営する人にとっても、かなり意識の向上は感じるのですが結果を見ると芳しくない状況です。それはユーザのセキュリティソリューションへの過度な期待が裏側にあると思うのです。



WORDPRESSはホームページを作成する有益なCMSとして世界ナンバー1ですが、残念ながらプログラムにマルウェア感染したサイトもWORDPRESSが非常に多い。脆弱性対策を促進するためにWORDPRESSのバージョンをアップさせなさいと様々なネットや記事でも取りざたされているわりに一向に感染は減らない状況と言えます。



実はここにトリックがあるのです。厳密に言うとWORDPRESSのシステムの脆弱性というよりはプラグイン、テーマファイル、利用ユーザの使い方と環境に問題があるため感染しているケースが多いと思います。



まずユーザが認識を改めるべきは、プラグイン、テーマファイルはマルウェア、スパイウェアのバックドアの巣窟なのだということ。ユーザが自由にカスタマイズしてWORDPRESSのシステムが及ばない世界(認知しない)だから防ぎようがない範囲なのです。



多くの運営者はCMSの管理画面ログインの防御を真っ先に考えます。しかし昨今のマルウェア感染状況を見る限りでは管理画面ログインやフォルダーを固定IPでブロックしても改竄はなくなっていません。この理由は簡単でプラグイン、テーマファイル、アップロードフォルダーはセキュリティ制限が緩い状況にあるからです。認証が生じない、IP制限が及ばないとなると予め不正な事ができるプラグインやテーマファイルをユーザにインストールさせてしまえば、バックドアを仕掛けるのは簡単。



WORDPRESSの中には新規でプラグインやテーマを検索&インストールする機能がありますがそこに登録されているものはすべて安全と考えるのは早計です。公式サイトに登録時に厳しいいチェックが入っているわけではないので導入はユーザの自己責任となっています。



また、仮に登録時にマルウェアスキャンをかけても検知されないようなアプローチもあります。そのケースは不正コードを暗号化したり、コードをシュレッドして分散することで見つからないようにしています。結局不正コードをいつでもアップロード、あるいはイネーブルにして外部から操作できる仕組みを導入しているためドキュメントルート直下のファイルやWORDPRESSのシステムファイルも改竄きてしまいます。これらは固定IPブロックや管理者ログインを制限しても無駄なのです。



このケースでは、1サーバに複数のドメインサイトを保有している環境で試しにそのうちの1つの仮想サーバを停止して、停止したサイトのフォルダーが改竄されるか実験してもたことがあります。結果は仮想サーバを停止しても該当ドメインのフォルダー配下のファイルは改竄されました。もはやWEBの仕組みで改竄スクリプトを動かしているのではなくLinuxOSの仕組みで改竄を行ってることがわかります。こうなってくると他の感染源となっているドメインサイトをクリーニングしないと改竄は止まりません。



タグ: , , ,

なかなか難しいWORDPRESSのマルウェア感染除去


昨年からWORDPRESSで構築したマルウェア感染サイトのスクリーニング作業をやり始めたのだが約8割は簡単に除去できるが、残り2割は簡単にマルウェアを削除できなくて継続してチェックしながら、差し込まれたタイミングを検知して削除する作業を行なっています。その中でようやく最近この残り2割のマルウェアを消滅させることができた。

何故、進まないマルウェア感染チェック

WORDPREESSのマルウェア感染はまず、感染しているということを気付けていないケースがかなり多く存在する。どのような目的を持っているのか、それともクラッキング練習台としてやっているのか詳しくはわからないが、見た目実害が無いケースが多いからサイトオーナはやらなくても良いと思ってしまう。これがまず最初の難関。次に感染した事をグーグルブラウザが教えてくれたり、顧客が異変に気づき教えてくれて始めて知るパターンだろう。意外とサイト管理者は忙しすぎて自分のサイトを見ていないものだ。

感染して気づくマルウェアチェックの重要性、そして一度感染したサイトは簡単にマルウェアを完全に除去できていない。

実は一度マルウェア感染したWORDPRESSサイトは、何度もその後も感染してしまう確率が高いのである。理由はプラグインなどの感染チェックや総合セキュリティソフトでは、全てをチェックしきれなくて感染ファイルは残っているのだ。残っている感染ファイルが改竄やファイル挿入の種になっているなら何度でも感染する事だろう。

WORDPRESSセキュリティアップデート、最新版へバージョンアップしてもマルウェア感染が減少しない理由

WEBサイトとは、サーバの設置とコンテンツの設置、それぞれのコンフィギュレーション調整、運用で構成されている。WORDPRESSは最大限の努力と改善を行なっていると思います。しかし前述の通りWORDPRESSは所詮コンテンツシステムの部分だけであるため、他の部分で不適切な設定やインストールになっていたら結局のところ感染してしまいます。

マルウェア感染する理由

数年前に大規模なガンブラー系の感染による被害が出たことがあります。この時期にプロバイダー、ホスティング業者はかなり改善を行なってFTPやIPアドレス縛りの機能を導入しました。そのおかげで大分ガンブラーによる被害は減少したと思います。しかし全部なくなったわけではなくガンブラー亜種がパソコンにスパイウェアとして感染したり、ブラウザに感染してサイトを侵略するように手が込んだ仕組みが出てきています。そのほかシステムの脆弱性ソースバグを突いて仕掛けてくる攻撃は常にいつまでもあり続けるでしょう、また、5、6年前まで蔓延っていたupload系の不正コード差し込みは現在でも有効です。つまり適切なサーバ設定とWORDPRESS設置が行われて無ければ未だに有効な手法なのです。 サイトは必ずしも1つの業者ではなく、複数の業者、WEB担当者が入れ替わったりするため、伝達不足から生まれる処置不足から、セキュリティーホールの要因の半分が人の問題だったりします。経営者や担当の上司はそのことに気付くべきです。

タグ: , , ,

WORDPRESSのマルウェア対策


WORDPRESSはCMS界の中ではユーザ数が最も多いオープンソースパッケージですが、オープンソースであるがゆえに、悪い人たち(クラッカー)に研究されてマルウェアを混入されてしまう危険性も高いのが難点。サイトを構築する段階から注意を払って作成すれば問題はないのですが、感染した後だと困難が待ち受けているのも事実です。

WORDPRESSの感染をチェックする方法

  • 使用しているテーマのテーマフォルダ内にあるphpやjavascriptファイルでタイムスタンプが怪しいものを見つける。

  • ファイルサイズが変わっている?あるいは増えていると思うものを開いてコードをチェックする。感染コードは見ればすぐに分かります。
  • セキュリティプラグインを導入してマルウェアの検出。50%から70%位は検出可能です。ドキュメントルート、WORDPRESSシステム配下のチェックは概ねプラグインソフトは弱いです。
  • uploadsフォルダー配下にphpファイルが存在しないかチェックする。
  • テーマ感染は既存ファイルに感染しているのがほとんど。新規ファイルのケースは少ない。
  • ドキュメントルート直下、システムフォルダ(wp-admin,wp-includes)は既存ファイルよりも新規ファイルで感染ファイルを置くケースが多い。

  • ドキュメントルート直下、システムフォルダで既存ファイルが感染している場合はワンランク上の感染と思ったほうが良い。つまりプラグイン程度で見つけたり駆除できない

  • pluginsフォルダー内の感染は元々プラグイン自体に仕込まれている事が多い。

セキュリティプラグインで合格だったから大丈夫と思わないほうが良いです。私は高度な感染を検知できるプラグインは未だに見たことありません。

ハイレベルなマルウェア感染

高次元の感染はタイムスタンプを過去の日付時間にする場合があり、感染がドキュメントルート全体に及ぶこともあります。つまりドキュメントルート直下、wp-admin,wp-includesあたりを改ざんする手口をやっているクラッカーはそこそこ詳しい人がやっているケースが多く簡単には見つからない手法で感染させているケースがあります。

手口と対処

  • 感染中継ファイルの拡張子を任意のイメージファイル拡張子に変えて設置
  • 改竄したファイルのタイムスタンプを書き換えている。周りのファイルのタイムスタンプとかけ離れているものは怪しい。
  • 感染中継ファイルで圧倒的に多いのは/wp-content/uploadsの配下に設置されている。
  • ドキュメントルート、wp-admin,wp-includes配下の感染は例えばサイトからWindowsにファイルをコピーして持ってきた上でWindows Defenderでスキャンしても見つけられる場合が結構ある。
  • ドキュメントルート、wp-admin,wp-includes配下の感染は有料ウィルススキャンソフトでWindowsにファイルをコピーして持ってきた上でスキャン実施すると高い検知率で発見、駆除ができる。
  • ドキュメントルート、wp-admin,wp-includes配下の感染はphp専用のマルウェアスキャナーで更にスキャンするとほぼ完璧に近いレベルで発見、駆除ができる。

予防策、防御策

  • ディレクトリレベルでmd5でハッシュ値を取り、コンテンツ更新する度にハッシュ値の更新を取る。
  • 毎日、定時間にバッチを走らせ前回のハッシュ値と現在のハッシュ値に相違があるか調べる。相違があった場合は感染の疑いあり。
  • 総合セキュリティプラグインの導入。最初から導入すると効果が抜群です。
  • 編集者はできるだけ固定IPで管理画面へのアクセスを縛ること。

タグ: ,

サイトの設定情報をhttps仕様に変更 WORDPRESS (ログイン情報、メニュー情報、プログラムのパス等)


サイトは必ずしも静的ページで作られているわけではありません。プログラムで構成されていればその中にもファイルやリンクのパス名が入っています。それらを書き換えないとhttps化の動作ができない場合もあります。やはり、WORDPRESSもhttps化を設定やデータベースの中身のレベルで書き換えが必要です。フレームワークも同様ですし、オリジナルのプログラムもそうなると思います。作業を行う前に必ずコンテンツ、プログラム、データベースをバックアップして切り戻しができるようにしてから作業を行いましょう。

尚、今回はWORDPRESSでのhttps化に特化して説明したいと思います。

WORDPRESSのhttps化方法

https化する方法としてざっくり3種類考えられます。どの方法がいいか!?というよりもどれが最短でできるか?という観点で私はやっています。

  • https化プラグインを使う。設定の中にあるパス名を書き換える。
  • WORDPRESSのデータベースの中をhttpからhttpsに置換する。
  • DB置換もしくはxml形式で記事をエクスポートして、新規にhttpsでWORDPRESSを設置してからインポート、設定をやり直し。

上記の方法では、間違いなくhttps化プラグインが一番簡単です。でも、正直いうとどの方法も完璧ではないので最短でできる方法から試して駄目だったら次の方法という感じでやっています。



https化プラグインで有名なのは「Really Simple SSL」です。これは簡単にいうとプラグインで内部のhttpを正規化表現か何かで引っ掛けhttpsに置換しているのだと思います。複雑なプラグインやテーマを使っているならまずは、これでやってみて様子見がいいと思います。



2つ目のDBの中を置換する方法ですが、これは私がよく使っている方法です。直接MySQLでクエリー行で置換を行うケースとSQLファイルにして吐き出したテキストを置換する場合があります。サイトのプラグインやテーマ、カスタマイズの状況を把握してやり方をチョイスしています。

【置換SQLサンプル】

下記の3つのテーブルを置換すると良いと思います。



DB置換ではwp_postsとwp_optionsに限定して置換をかけたほうが良いです。その他のテーブル置換を行うと概ねWidgetやテーマ、プラグインの設定が飛んでしまうケースが多いです。置換後にSSL化でWEBサーバ起動し、その後にWPへログインし設定パネルへ移動しhttpをhttpsに手動修正してゆく方法だとうまく処理できる場合が多いです。DB上で変換しないで、管理画面>ツールにあるエクスポート機能で投稿、固定ページ、カスタムポストタイプのデータを事前に取っておいてインポートする方法があります。カスタムポストタイプだけ特殊な場合があり、うまくエクスポートできない事もありますが、事前にデータベースをバックアップしておけばやり直しができるので安全に試行してください。



3つ目の方法は無難な方法です。確実に再構築できると思います。https仕様でWORDPRESSを新規インストールし、後から記事データをDBレベルで流し込むかxml形式で流し込みます。widgetやプラグイン、サイトの設定は予めレプリカサイトを作り閲覧しながらコピーするやり方、もしくはテキストに設定をコピペしてそれを流し込んでゆく方法があります。時間が多少かかりますが確実な方法です。

タグ: , ,

WORDPRESS nav-menu.phpが書き換えられるケース


このnav-menu.phpを書き換える攻撃は国内では昨年くらいから多く報告されIPAにも多数報告があるものです。私自身も幾つかのお客様で確認したことがある攻撃です。

この攻撃コードは幾つものパターンがあり、例えばフォーム処理の内容を攻撃者へ転送したり、直接サイトをブックマークでアクセスする分には、正常に思った通りのサイトへアクセスできるのですがグーグルやヤフーの検索エンジンからクリックして飛ぶと全く他のサイトへ転送されるというものです。

index.phpの内部で呼び出されている間接ファイル(wp-load.php,wp-blog-header.phpのあたり)が改ざんされているケースが多いです。また合わせて.htaccessファイルも書き換えられているケースが有りました。



この攻撃への対策は基本は管理画面を固定IPで縛ると殆どは安全です。でもスパイウェアを仕掛けられたら絶対とは言えません。一番良いのはある程度重要なWORDPRESSファイルをroot権限でreadonlyにしておくことをお勧めします。WORDPRESSのアップデート時には自動アップデートの障害になりますが安全を考えるなら良いと思います。

もしやり方がわからない場合は、別途弊社までご相談ください。

ご自分で対策される方はこちらの記事を参考にしてください。かなり対策のヒントになると思います。WORDPRESSマルウェア対策について

下記はアクセス権限をreadonlyにしたほうが良いファイル

  • .htaccess
  • index.php
  • wp-config.php
  • wp-load.php
  • wp-blog-header.php
  • /wp-includes/nav-menu.php
  • /wp-admin/includes/nav-menu.php

WORDPRESSのプラグインで予防を常に行って起きましょう。 「iThemes Security」「SiteGuard」のあたりがお薦めです。管理画面のプラグイン新規追加で導入しましょう。

タグ: , , ,

1 2 3 4