ADOdb SQLite3 ドライバの脆弱性 CVE-2025-54119 が FIX:任意の SQL 実行が可能に

Critical Flaw in ADOdb SQLite3 Driver Allows Arbitrary SQL Execution

2025/08/05 gbhackers — PHP ユーザーに人気を博す ADOdb で発見された、セキュリティ脆弱性 CVE-2025-54119 により、SQLite3 データベースを使用するアプリケーションに深刻な影響が及ぶとされる。このデータベース抽象化ライブラリの脆弱性を悪用する攻撃者は、任意の SQL ステートメントを実行する可能性を手にするため、ADOdb バージョン 5.22.9 以下に深刻なリスクが生じている。

脆弱性の詳細と影響

この問題は、ADOdb の SQLite3 ドライバにおけるクエリ・パラメータの不適切なエスケープに起因しており、特に metaColumns()/metaForeignKeys()/metaIndexes() の3つのメタデータ取得メソッドが影響を受ける。これらのメソッドを呼び出す際に、細工されたテーブル名を指定することで、攻撃者は悪意の SQL コードを注入し、基盤となる SQLite3 データベース上で任意のクエリを実行できる。

FieldDetails
CVE IDCVE-2025-54119
Vulnerability TypeSQL Injection in ADOdb sqlite3 driver
SeverityCritical
CVSS v3.1 ScoreCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:L

この脆弱性は、スイスを拠点とする ADOdb プロジェクトの主要メンテナであり、Mantis Bug Tracker など複数の PHP プロジェクトにも関与する、dregad により公開されたものだ。彼によるセキュリティ・アドバイザリは、2日前に発行されており、その緊急性を強調するものとなっている。

この脆弱性の CVSS v3.1 評価は Critical とされている。攻撃ベクターはネットワーク・ベースでの複雑性は低く、特権やユーザー操作も不要である。また、スコープは Changed に分類されており、この脆弱性の影響は、当該コンポーネントに留まらず、他のリソースにも及ぶ可能性がある。機密性/完全性への影響は高く、可用性への影響は比較的低い。

CVE-2025-54119 の根本的な原因は、影響を受けるメタデータ・メソッドに渡されるテーブル名の処理において、入力値に対する適切なサニタイズ処理が施されていない点にある。この脆弱性は CWE-89 に分類され、典型的な SQL インジェクションの事例となっている。

悪用された場合の最悪のシナリオは、ユーザーが提供した入力が検証されずに、ダイレクトにメソッドに渡されるケースである。それにより攻撃者は、機密データの閲覧/データベースの改竄/管理操作の実行などを達成するとされる。

この脆弱性の影響が及ぶ範囲は、ユーザー入力に基づいてデータベース・メタデータのクエリを動的に生成するアプリケーションとなる。このような実装は、データベース管理ツール/コンテンツ管理システム/データベース・イントロスペクション機能 (スキーマ表示/構造検査ツール) を提供する、カスタム・アプリケーションなどに共通する典型的なパターンである。

ADOdb 開発チームは、この脆弱性に対処するため、コミット 5b8bd52cdcffefb4ecded1b399c98cfa516afe03 を通じて、修正バージョン 5.22.10 をリリースしている。影響を受けるバージョンを使用する組織に対して強く推奨されるのは、修正済みのバージョンへと速やかにアップグレードすることである。

また、早急なアップグレードが困難な環境においては、一時的な緩和策として、metaColumns()/metaForeignKeys()/metaIndexes() の $table パラメータに対して、制御/検証済みのデータのみを渡すように実装を変更し、リスクを軽減する方式がある。

この脆弱性は、セキュリティ研究者 Marco Nappi (@mrcnpp) により責任ある形で開示された。同氏は、この脆弱性を特定し、適切なチャネルを通じて報告した。

この発見が改めて浮き彫りにするのは、世界中の多くの Web アプリケーションで広く使用される、OSS ライブラリに対する継続的なセキュリティ調査の重要性である。

ユーザー組織にとって必要なことは、自身の ADOdb 実装を監査し、速やかにセキュリティ更新を適用し、この深刻な脆弱性の悪用を阻止することである。