MapSVG Liteに任意ファイル設置の欠陥、修正版は未公表
WordPress用プラグイン MapSVG(mapsvg-lite-interactive-vector-maps)の 8.16.1 までに、危険な種類のファイルをサーバーへ置かれてしまう欠陥が見つかりました。深刻度は CVSS 9.9 の「重大」で、ログインできるアカウントがあれば遠隔から Web シェルを設置され、サイトを乗っ取られるおそれがあります。該当するサイトは、使用の有無と版をすぐに確認し、修正版の公表を調べたうえで、公表されるまでは無効化も検討してください。
急ぎ度: 早めに
CVSS 9.9 でサイト全体の乗っ取りにつながる欠陥ですが、実際の攻撃での悪用が確認されたという公表は現時点でなく、悪用にはログイン済みアカウントが必要なためです。
関係があるか
MapSVG Lite プラグインを入れた WordPress サイトを運用している組織が対象です。会員登録や投稿者アカウントを外部に発行しているサイトは、悪用の入口が増えるため特に注意が必要です。
| 製品 | 影響を受ける版 | 直った版 |
|---|---|---|
| MapSVG(mapsvg-lite-interactive-vector-maps、提供元 PT Norther Lights Production) | 8.16.1 までのすべての版(下限は不明) | 公表されていません。8.16.1 より新しい版が出ているかは、Patchstack の告知とプラグインの配布ページで確認してください。 |
確かめ方
- 1WordPress の管理画面で「プラグイン」を開き、MapSVG(Lite 版を含む)が入っているか、版が 8.16.1 以前かを見ます。無効化中でもファイルが残っていれば、念のため削除するか版を確認してください。
- 2サーバーに入れる場合は、WP-CLI で版を確かめられます。
wp plugin list | grep -i mapsvg - 3すでに悪用されていないかの目安として、アップロード用の場所に見覚えのない実行形式のファイルがないかを確認します。
find wp-content/uploads -name "*.php" - 4ログインできるユーザーの一覧を見て、心当たりのないアカウントや、最近作られた不審なアカウントがないかを確かめます。
何が起きたか
WordPress のプラグイン MapSVG(Lite 版、mapsvg-lite-interactive-vector-maps)に、ファイルのアップロードを十分に制限していない欠陥が見つかりました。本来は地図用の画像などだけを受け付けるべき場所で、サーバー上で動かせる危険な種類のファイルまで受け付けてしまいます。8.16.1 までの版が影響を受けると公表されています。
攻撃に成功すると、Web シェルと呼ばれる遠隔操作用の小さなプログラムをサーバーに置かれるおそれがあります。Web シェルが置かれると、攻撃者はブラウザからサーバーに命令を送れるようになり、サイトの改ざんや情報の持ち出しができてしまいます。
弱点の分類は CWE-434(危険な種類のファイルの無制限アップロード)です。深刻度は CVSS v3.1 で 9.9(重大)、評価ベクターは AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H です。ネットワーク越しに、特別な条件なしで、低い権限があれば実行でき、影響がプラグインの範囲を超えて広がる評価になっています。
攻撃の流れ
-
1
アカウント入手
攻撃者がサイトにログインできる低い権限のアカウントを手に入れます。
-
2
危険ファイル送信
プラグインのアップロード機能に、本来は拒否すべき種類のファイルを送ります。
-
3
Web シェル設置
ファイルがサーバー上に保存され、遠隔操作用のプログラムとして置かれます。
-
4
サーバー操作
置かれたファイルを通じて、サーバー上で攻撃者が命令を実行できるようになります。
どう悪用されるか
悪用にはログイン済みのアカウントが必要です(評価上は低い権限)。どの権限のユーザーから実行できるかは、公表されている内容からは分かりません。利用者の操作は不要で、インターネット越しに仕掛けられます。手順が複雑ではないと評価されており、アカウントさえあれば難しくない攻撃とみられます。
悪用された場合の被害は、機密性・完全性・可用性のすべてが高いと評価されています。具体的には、サイトの改ざん、保存された顧客情報や設定情報(データベースの接続情報など)の持ち出し、不正なプログラムの設置、同じサーバー上にある別のサイトへの被害の広がりが考えられます。また、評価では影響範囲がプラグインの外へ及ぶ(スコープの変更あり)とされています。
実際の攻撃での悪用が確認されたという公表は、現時点で見当たりません。
今すぐやること
-
1
使っているかと版を確認する
MapSVG(Lite 版を含む)が入っているサイトを洗い出し、版が 8.16.1 以前かを確かめます。複数サイトを預かる環境では、すべてのサイトで確認してください。
wp plugin list | grep -i mapsvg -
2
修正版の有無を確認して適用する
8.16.1 より新しい版が公開されているかを、Patchstack の告知やプラグインの配布ページで確認します。修正版が出ていれば、検証環境で表示を確かめたうえで本番に適用します。修正版が公表されていない間は、次の回避策を検討してください。
-
3
不審なファイルとアカウントを調べる
アップロード用の場所に見覚えのない実行形式のファイルがないか、不審なユーザーが作られていないかを確認します。見つかった場合は、ファイルを削除する前に証拠として保全し、パスワードの変更や認証情報の入れ替えを行ってください。
find wp-content/uploads -name "*.php" -
4
アカウント発行の運用を見直す
外部に開いているユーザー登録を止められるか、不要なアカウントを整理できるかを検討します。悪用にはログインが必要なため、入口を減らすことが効果的な対策になります。
すぐ更新できないとき
修正版を当てられない場合は、MapSVG プラグインを無効化するか、地図機能を使わないなら削除してください。無効化が難しいときは、ユーザー登録の停止や不要アカウントの削除でログイン可能な人を減らし、アップロード用の場所でプログラムが実行されないようサーバー側で設定する、WAF でプログラム形式のファイルのアップロードを遮断する、といった対策で被害を抑えられます。ただし、これらは暫定的な対策で、修正版の適用に代わるものではありません。
背景
MapSVG は、WordPress のサイトにクリックできる地図や地域別の情報表示を加えるプラグインです。店舗・拠点の案内や地域別のお知らせに使われ、会社の公開サイトに組み込まれていることが多い種類のものです。プラグインは管理画面から簡単に入れられる一方、サイトの本体と同じ権限で動くため、1 つの欠陥がサイト全体に影響しやすい性質があります。
ファイルのアップロード機能で種類の確認が甘く、Web シェルを置かれてしまう弱点は、WordPress のプラグインでこれまで繰り返し見つかってきた典型的な問題です。画像などを受け付ける機能が悪用されやすく、見つかると短期間で攻撃が試されやすい傾向があります。ログインが必要な欠陥でも、アカウントを持つ人が多いサイトでは影響が大きくなる点に注意が必要です。
よくある質問
Q.Lite 版ではなく有料版を使っていますが、対象ですか。
Q.ログインが必要なら、一般の訪問者は心配しなくてよいですか。
Q.実際に攻撃は起きていますか。
まだ分かっていないこと
- 修正版の版番号と公開日は公表されていません。
- どの権限のユーザー(購読者、投稿者など)から悪用できるかは明らかになっていません。
- 実際の攻撃での悪用の有無や、悪用される見込みを示す指標は現時点で明らかになっていません。
この記事は、取得元の公開情報をもとに生成 AI で作成しています。誤りを含むことがあります。対応を決める前に、下の原文と参照先を確認してください。
原文の説明 取得元が公開している説明をそのまま載せています (多くは英語)。
Unrestricted Upload of File with Dangerous Type vulnerability in PT Norther Lights Production MapSVG mapsvg-lite-interactive-vector-maps allows Upload a Web Shell to a Web Server.This issue affects MapSVG: from n/a through 8.16.1.
出典: GitHub Security Advisories (Global) NVD GitHub Advisory
参照URL
- web nvd.nist.gov
- web audit@patchstack.com
- web github.com