| CVSS v3 スコア | 8.3 / 10 |
危険度・中(CVSS 8~8.8)=対応が必ず必要な脆弱性
脆弱性があるバージョン
< 2.1.3脆弱性の概要
Koko AnalyticsはWordPress用のオープンソース解析プラグインです。バージョン2.1.3以前のものは、エスケープ処理されていない解析データのエクスポート/インポートおよび許可範囲が広すぎる管理用SQLインポートを通じて、任意のSQL実行の脆弱性があります。認証されていない訪問者は、src/Resources/functions/collect.php内の公開トラッキングエンドポイントに任意のパス(`pa`)およびリファラー(`r`)値を送信でき、これらの文字列は解析テーブルにそのまま格納されます。 src/Admin/Data_Export.php内の管理者エクスポートロジックは、これらの保存値をエスケープせずにSQL INSERT文に直接書き込みます。例えば「),('999','x');DROP TABLE wp_users;--」のような細工されたパスは値リストから抜け出します。 管理者が後でそのエクスポートファイルをインポートすると、src/Admin/Data_Import.php内のインポートハンドラーはアップロードされたSQLをfile_get_contentsで読み込み、表面的なヘッダーチェックのみを行い、セミコロンで分割し、テーブル名やステートメントタイプの検証なしに$wpdb->query経由で各ステートメントを実行します。 さらに、manage_koko_analytics権限を持つ認証済みユーザーは任意の.sqlファイルをアップロードでき、同様に緩い方法で実行されます。これにより、攻撃者が制御する入力がトラッキングエンドポイントからエクスポートされたSQLへ、そしてインポート実行シンクを経由して、あるいは悪意のあるアップロードを直接通じて流入し、任意のSQL実行が可能になります。最悪の場合、攻撃者は| 脆弱性ベクトル | AV:N/AC:H/PR:N/UI:R/S:C/C:H/I:H/A:H ※赤文字=危険、黒文字=要注意、緑文字=安全 |
|---|---|
| 攻撃元区分(AV:Attack Vector) | N: ネットワーク経由でリモートから攻撃可能 |
| 攻撃条件の複雑さ(AC:Attack Complexity) | H: 攻撃者は、設定情報、シーケンス番号、共有鍵など、攻撃対象の情報収集が事前に必要 |
| 攻撃に必要な特権レベル(PR:Privileges Required) | N: 特別な権限を有する必要はない |
| ユーザ関与レベル(UI:User Interaction) | R: リンクのクリック、ファイル閲覧、設定の変更など、ユーザ動作が必要 |
| 攻撃による影響範囲(S:Scope) | C: 影響範囲が脆弱性の帰属するオーソリゼーションスコープ(サイトのあるサーバー内)に留まらずクロスサイトスクリプティング、リフレクター攻撃に悪用される可能性 |
| 情報漏えいの可能性(C:Confidentiality Impact) | H: (ワードプレスのデータベース内や管理画面に含まれる)機密情報や重要なシステムファイルが参照可能 |
| 情報改ざんの可能性(I:Integrity Impact) | H: 機密情報や重要なシステムファイルの改ざんが可能 |
| 業務停止の可能性(A:Availability Impact) | H: リソース(ネットワーク帯域、プロセッサ処理、ディスクスペースなど)を完全に枯渇させたり、サイトの表示や機能を完全に停止させることが可能 |
脆弱性のリファレンス(参考リンク 英語)
- https://drive.google.com/file/d/1HdQKf42prwrBUUG2CwbIkccTp2i6HR6d/view?usp=sharing
- https://github.com/ibericode/koko-analytics/commit/7b7d58f4a1838c8203cf4e7bb59847c982432119
- https://github.com/ibericode/koko-analytics/security/advisories/GHSA-jgfh-264m-xh3q
脆弱性があるプラグインの概要
プラグイン名: Koko Analytics
プラグインのスラグ(フォルダ名): koko-analytics
プラグインのサイト: https://github.com/ibericode/koko-analytics
脆弱性FAQ
CVSSとは何ですか?
CVSS は、情報システムの脆弱性に対するオープンで汎用的な評価手法であり、ベンダーに依存しない共通の評価方法を提供しています。CVSSを用いると、脆弱性の深刻度を同一の基準の下で定量的に比較できるようになります。
脆弱性の危険度スコア(CVSSスコア)とは?
脆弱性の危険度スコア(CVSSスコア)は、攻撃元区分、攻撃条件の複雑さ、攻撃前の認証要否などの攻撃の為の諸条件や攻撃を受けた場合の影響度をそれぞれ重みづけしたスコアを計算して、10点満点でその脆弱性の危険性を点数付けしたものです。
脆弱性を放置するとどうなりますか?
脆弱性の危険度にもよりますが、ハッカーはワードプレスを手当たり次第に、複数の脆弱性を次から次に攻撃するツールを使用して攻撃します。この為その脆弱性を利用されてサイトを改ざんされたり、管理者権限を乗っ取りされてしまう可能性や攻撃の踏み台にされる回数も増えます。
脆弱性を解消するには?
脆弱性を解消するのに最も簡単な方法は、そのプラグインやテーマを作成している製作者がパッチを当てている最新バージョンにアップデートすることになります。しかしアップデートをサイトに適応するとサイトに不具合を起こす可能性もあります。この為にテスト環境を利用して動作を確かめたうえで本番環境をアップデートする方法がよくとられます。このような一連の作業をWP ドクターで安全に代行しますことも可能です。
プラグインやテーマをアップデートできない場合は?
お使いのワードプレスやPHPのバージョンとの兼ね合いからアップデートできない場合はワードプレスやPHPのバージョンを安全にアップデートしたうえで脆弱性のあるプログラムをアップデートします。
プラグインやテーマのアップデートが公開されていない等、アップデートが技術的に困難な場合は、脆弱性を直接ふさぐか、代替えのプラグイン等を探して機能を置き換えることで脆弱性を回避することが可能です。(WP ドクターに代行を依頼する)
マルウェアの感染が疑われる場合は?
サイトに脆弱性が見つかり、マルウェアの感染が疑われる場合は、プラグインでマルウェア検査やマルウェア駆除が可能です。またマルウェア駆除を経験豊かな専門家に依頼いただくことも可能です。
サイトに導入してるプラグインに脆弱性があるか調べたい
サイトに導入されているプラグインに脆弱性があるかどうか調べるには、こちらの検索機能で検索して脆弱性があるかをお調べいただくことができます。また、プラグインを使用して脆弱性を一括で検索して調査することも可能です。





