Clockinator Liteに認証不要のSQLi脆弱性、修正版あり
WordPressプラグインのClockinator Lite 1.1.0未満に、認証なしでデータの削除や抜き取りができるSQLインジェクションの脆弱性が見つかりました。使っているサイトは1.1.0へ更新し、更新が済むまではプラグインの停止も検討してください。
急ぎ度: 至急
CVSS v3は最高の10.0で、認証なしにネットワークから攻撃でき、修正版の1.1.0がすでに出ているため、該当するサイトは更新を先送りする理由がありません。
関係があるか
WordPressでClockinator Liteを導入しているサイトが対象です。プラグインがデータベースにアクセスするため、投稿やユーザー情報を持つサイト全般が影響を受けます。
| 製品 | 影響を受ける版 | 修正版 |
|---|---|---|
| Clockinator Lite(WordPressプラグイン。WPScanの掲載ではスラッグが clockify-lite) | 1.1.0未満 | 1.1.0 |
確かめ方
- 1WordPressの管理画面でプラグイン一覧を開き、Clockinator Liteの版が1.1.0未満でないかを見ます。
- 2複数のサイトを預かっている場合は、WP-CLIで各サイトの導入状況と版を一覧にすると漏れを防げます。
- 3停止中のプラグインも、サーバー上にファイルが残っていれば対象に含めて確認してください。有効かどうかによる影響の違いは示されていないためです。
何が起きたか
WordPressプラグインのClockinator Liteに、データベースの内容を消したり読み出されたりする脆弱性が見つかりました。1.1.0より前の版が対象で、1.1.0で修正されています。WPScanが2026年11月10日に公開し、CVEは11月12日に登録されました。
プラグインには複数のレコード削除処理があり、その多くで、呼び出せる利用者の制限がかかっていません。さらに、利用者が指定したテーブル名を、検証もエスケープもせずにSQL文へ組み込んでいます。種類はSQLインジェクション(CWE-89)です。
テーブル名は、値と違ってプレースホルダーで保護できない部分です。この種の不具合は、許可するテーブルを固定の一覧で絞る実装でないと防げません。削除の対象が1つの表に限られず、任意のテーブルに及ぶのはこのためと考えられます。
攻撃の流れ
-
1
サイトに到達
ログインしていない外部の者が、公開されたWordPressサイトにネットワーク経由で接続します。
-
2
削除処理を呼ぶ
アクセス制限のない削除系の処理に、テーブル名を含む値を送ります。
-
3
SQLに混入
検証されないテーブル名がそのままSQL文に組み込まれ、意図しない命令が実行されます。
-
4
削除と抜き取り
任意のテーブルのデータが消され、パスワードのハッシュなどが読み出されます。
どう悪用されるか
悪用にログインは要りません。ネットワークから到達できれば、利用者の操作も待たずに攻撃できます。CVSSのベクターでも、攻撃の複雑さは低、権限と利用者の操作はともに不要とされています。
悪用されると、任意のテーブルのデータを削除でき、パスワードのハッシュのような機密情報も抜き取れます。機密性・完全性・可用性のすべてが高と評価されており、プラグインの範囲を超えてWordPress全体のデータベースに影響が及びます。ユーザー表や設定表が消えれば、サイトが動かなくなることも想定されます。
今すぐやること
-
1
導入の有無と版を確認する
管理画面のプラグイン一覧か、WP-CLIでClockinator Liteの版を確認します。1.1.0未満なら対象です。Lite以外の版を使っている場合は、ベンダーの告知で影響の有無を確かめてください。
wp plugin list --fields=name,status,version -
2
バックアップを取り、1.1.0に更新する
ファイルとデータベースのバックアップを取ってから、修正版の1.1.0へ更新します。複数サイトを管理しているときは、外部に公開しているサイトから順に進めます。
-
3
更新までの間に侵害の跡がないか調べる
公開から数日しかたっていませんが、更新が遅れたサイトでは、データの欠落や不審なユーザーの追加、設定の書き換えがないかを見てください。アクセスログで、プラグインの削除系の処理への不審なリクエストが続いていないかも確認します。
-
4
不審な点があれば認証情報を入れ替える
データの抜き取りが疑われる場合は、管理者を含む全ユーザーのパスワードを再設定させます。あわせて、wp-config.phpにあるデータベースの接続情報も見直します。
-
5
ベンダーの告知を確認する
Clockinator Liteの提供元の告知と、WordPress.orgのプラグインページで、更新内容と対象の版が追加されていないかを確かめます。
すぐ更新できないとき
すぐに更新できないときは、Clockinator Liteを無効化し、更新できるまで使わないでください。個別の回避策がベンダーから案内されていないかは、告知で確認してください。
背景
WordPressのプラグインは、サイトと同じ権限でPHPを動かし、同じデータベースに接続します。そのため、プラグイン1つの不具合が、記事だけでなくユーザー表やパスワードのハッシュを含むサイト全体の情報に直結します。WPScanの一覧には、Motorsなど、認証不要のSQLインジェクションが見つかったプラグインが並んでいます。
今回の特徴は、値ではなくテーブル名がそのままSQLに入る点です。値ならプレースホルダーで防げますが、テーブル名は許可リストで絞る必要があります。そこに削除処理のアクセス制限の欠落が重なったため、認証なしで任意の表のデータを削除できる構造になりました。
よくある質問
Q.パスワードのハッシュを取られた場合、パスワードは破られますか。
Q.Clockinator Lite以外の同じ提供元のプラグインも影響を受けますか。
まだ分かっていないこと
- 実際の攻撃で悪用されたかどうかや、被害を受けたサイトの有無は、現時点の公開情報には見当たりません。
この記事は、取得元の公開情報をもとに、人が監修しながらAIを活用して執筆しています。執筆と監修は佐々木 航が担い、公開したあとも人が内容を確認しています。誤りに気づいたときは直し、記事の末尾に訂正の行を残します。対応を決める前に、下の原文と参照先も確認してください。
影響パッケージ
| パッケージ | 影響を受ける版 → 修正版 | |
|---|---|---|
| CVE の記録Clockinator Lite |
1.1.0 未満→ 1.1.0 |
1.1.0 |
原文の説明 取得元が公開している説明をそのまま載せています (多くは英語)。
The Clockinator Lite WordPress plugin before 1.1.0 does not restrict access to several of its record deletion actions, and uses a user-supplied table name in a SQL query without validating or escaping it, allowing unauthenticated users to perform SQL injection attacks, deleting data from any database table and extracting sensitive information such as password hashes.
出典: CVE.org (CVE Program・cvelistV5) NVD GitHub Advisory
参照URL
- web contact@wpscan.com
- web nvd.nist.gov
- web wpscan.com
- web github.com