Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

フィードお問い合わせプライバシー© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
joomla-levels-api — Joomla 6.1.3 - 高 - リモート - ACL - GET /api/v1/users/levels が閲覧レベルを漏洩する | Kitploit
ツール/GitHubGitHub/abraxas/joomla-levels-api
認証と認可脆弱性分析エクスプロイトウェブアプリケーション悪用ウェブセキュリティペネトレーションテストAPIセキュリティラボと実践
GitHubabraxas/joomla-levels-api

joomla-levels-api

Joomla 6.1.3 - 高 - リモート - ACL - GET /api/v1/users/levels が閲覧レベルを漏洩する

リポジトリを見る
248日前未レビュー

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

Abraxas Labs - joomla-levels-api

abraxaslabs.tech  ·  github.com/abraxas  ·  @abraxas_null  ·  [email protected]  ·  joomla-levels-api

解説記事: https://abraxaslabs.tech/research/joomla-levels-api

joomla-levels-api

分類: 権限の取り残し 到達範囲: リモート

Joomla CMS 6.1.3 (0f2d4de) - Open Source Matters

管理者の Users -> Viewing Access Levels は、com_users に対する core.admin を要求します(LevelController::allowSave および削除)。Groups ウェブサービスもすでに同様です(GroupsController、6.1.1)。LevelsController には allowAdd、allowEdit、delete のオーバーライドがないため、ApiController は core.manage と core.create を通過させてしまいます。

core.admin を持たずに core.login.api を付与された Manager クラスの API トークンは、UI が禁じている閲覧アクセスレベルを作成できます。

IDCVE 未割当
分類権限の取り残し / 認可バイパス
到達範囲リモート(core.login.api を持つ API トークン)
CWECWE-863
CVSSMedium: 6.1 CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:N
製品Joomla CMS
影響を受けるバージョン6.1.3 (0f2d4de4729eb951e0878fec98c7990da07915b2)
認証Manager(グループ 6)用の API トークンで、core.login.api と com_users の manage/create/edit を持つもの。core.admin はなし。デフォルトの core.login.api は Super User のみ。
ライセンスGNU Affero GPL v3.0
ラボ127.0.0.1 のみ

攻撃者ができること

非 Super User の API トークンを使って、どのグループがどのページを見られるかを変更できます。この取り残し単体で Super User になれるわけではありません。これはコンテンツの可視性の制御であり、サイトの乗っ取りではありません。

権限メソッド / パス種別ラボ実証または推測
閲覧アクセスレベルの作成POST /api/index.php/v1/users/levels JSON title、rules(グループ ID)完全性ラボ実証済み。HTTP 200、#__viewlevels id=7、タイトル poc-level-JOOMLA-LEVELS-API-WITNESS
既存レベルの編集(グループリスト / タイトル)PATCH /api/index.php/v1/users/levels/{id}完全性推測。同じコントローラで allowEdit なし。ラボでは作成のみ実施。
レベルの削除DELETE /api/index.php/v1/users/levels/{id}完全性 / ACL 行の可用性推測。同じオーバーライドの欠落。ラボでは DELETE を実施せず。
会員限定の記事、モジュール、メニュー項目の公開rules に Public / Guest / Registered を含む新規または改変されたレベル偵察(コンテンツの可視性)#__viewlevels.rules からの推測。ラボでは行を挿入したが、稼働中の記事の ACL は変更していない。
Registered からページを隠す、または攻撃者のグループを Special レベルに追加する同じ PATCH / 作成完全性推測。同じストア。
API からユーザーグループを変更するPOST /api/index.php/v1/users/groups該当なしラボ実証で クローズ。HTTP 403(GroupsController の core.admin)
管理者画面で Users -> Viewing Access Levels を開くGET /administrator/index.php?option=com_users&view=levels該当なしラボ実証で クローズ。HTTP 403
UI からレベルを保存するPOST ... task=level.save該当なしラボ実証で クローズ。HTTP 403(LevelController::allowSave は core.admin を要求)
標準の Manager(core.login.api なし)で API にアクセスするBearer トークン / X-Joomla-Token該当なし推測でクローズ。デフォルトの core.login.api は Super User(グループ 8)のみ。このラボではまずグループ 6 に付与している。
Super User / インストーラ RCE該当なし該当なしクローズ。Manager は Manager のまま。

発見の経緯

joomla/joomla-cms 6.1.3 を 2026-07/08 の JSST の波の後に固定しました。Groups API はすでに core.admin を要求しています。ビューレベルは依然として ApiController(core.manage に加えて core.create / core.edit / core.delete)を通過します。LevelsController 上の唯一の追加ロジックは、rules の PATCH JSON デコードです。

修正済みの Groups の兄弟:

public function allowAdd($data = [])
{
    return $this->app->getIdentity()->authorise('core.admin', $this->option);
}

管理者 UI:

protected function allowSave($data, $key = 'id')
{
    return $this->app->getIdentity()->authorise('core.admin', $this->option)
        && parent::allowSave($data, $key);
}

誤った方向性はすでに記録済み:Groups API をまだオープンとみなすこと(実際は 403);core.login.api を先に付与せずに通常の Manager として API にアクセスすること(デフォルトは Super User のみで、CVE-2026-71574 / 72531 / 48904 と同じ設定);UI の 403 をすべてとみなすこと(残っているのは API である)。演劇:リバースシェル。オラクルは API 200 かつ Groups 403 かつ UI 403 である。

同じピンの残骸:menu items API、media override、articles catid。

ラボ

python3 joomla-levels-api-Abraxas-Labs.py

または

cd lab
./run.sh

対象は http://127.0.0.1:19520 のみです。イメージは joomla:6.1.3-php8.3-apache に加えて mariadb:11.4 です。

SUCCESS joomla-levels-api api-http=200 level-id=7 groups-api=403 ui-view=403 ui-save=403 JOOMLA-LEVELS-API-WITNESS

修正内容

GroupsController の core.admin における allowAdd / allowEdit / delete を LevelsController にコピーします。管理者用 UI のゲートは維持してください。

参考情報

  • github.com/joomla/joomla-cms タグ 6.1.3 (0f2d4de4729eb951e0878fec98c7990da07915b2)
  • LevelsController.php
  • 近接する修正済み項目: Groups API core.admin (6.1.1) · CVE-2026-71574
  • 同一タグ: joomla-menu-items-api · joomla-media-override · joomla-articles-catid
  • CWE-863

ライセンス

GNU Affero GPL v3.0。LICENSE を参照してください。ループバックラボ専用です。保証はありません。

ツールをダウンロード