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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
openmeetings-stale-install-admin — Apache OpenMeetings 9.1.0 - 高 - リモート - 権限の残留 - 古い /install ウィザードが2人目の ADMIN を挿入する | Kitploit
ツール/GitHubGitHub/abraxas/openmeetings-stale-install-admin
認証と認可特権昇格脆弱性分析エクスプロイトウェブアプリケーション悪用ラボと実践
GitHubabraxas/openmeetings-stale-install-admin

openmeetings-stale-install-admin

Apache OpenMeetings 9.1.0 - 高 - リモート - 権限の残留 - 古い /install ウィザードが2人目の ADMIN を挿入する

人気

すべて見る →

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

すべてのツールを探索

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

すべてのツールを見る →
共有
リポジトリを見る
2日前未レビュー

Abraxas Labs - openmeetings-stale-install-admin

abraxaslabs.tech  ·  github.com/abraxas  ·  @abraxas_null  ·  [email protected]  ·  openmeetings-stale-install-admin

openmeetings-stale-install-admin

分類: 権限の残留 到達性: リモート

Apache OpenMeetings 9.1.0 (9773c59e) - Apache Software Foundation

InstallWizardPage は isInstalled() の後に新規リクエストをリダイレクトします。最初のインストール前に開かれた Wicket ページは有効なまま残ります。その古いセッションで Finish を実行すると loadAll(cfg, true) が実行されます。ImportInitvalues.checkInstalled は「no need to install」とログを出力するだけで、リターンしません。2回目の Finish は別の ADMIN+SOAP ユーザーを挿入します。

IDCVE 未割当
分類権限の残留
到達性リモート(初回セットアップ中の未認証 /install)
CWECWE-367, CWE-269
CVSSHigh: 8.1 CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
製品Apache OpenMeetings
影響範囲9.1.0 (9773c59e1af327bf988018e661f456ae9997c29f) 初回インストール期間
認証古いウィザードセッションでは不要
ライセンスGNU Affero GPL v3.0
ラボ127.0.0.1:18159 のみ。公式 9.1.0 tarball、未インストール、HTTP 5080。

タグ 9.1.0 を固定し、9773c59e1af327bf988018e661f456ae9997c29f を peel しました。この残留には、最初のインストールが完了する前に開かれたウィザードページが必要です。

攻撃者ができること

インスタンスがまだインストールされていない間に /openmeetings/install に到達します。その JSESSIONID を保持します。運用者が最初のインストールを完了するまで待ちます。古いページで Finish を POST します。

手法シンク権限
古い POST ウィザード Finish (wizard-form-buttons-finish)ImportInitvalues.checkInstalled がログを出力して続行 (ImportInitvalues.java:607-612); loadInitUserAndGroup整合性(ラボ実証済み): 権限 ADMIN、SOAP、LOGIN、DASHBOARD、ROOM を持つ2人目のユーザー staleadm。SOAP ログイン成功。ユーザーリスト件数=2。
同じ loadAll(cfg, true)古いフォームからの永続化 / SMTP / パス整合性(推定): 攻撃者が制御するウィザードフィールドから persistence.xml とメール設定を書き換え。SUCCESS には不要。

ラボ実証済み vs 推定: 2人目の ADMIN+SOAP ログインはラボ実証。persistence.xml の書き換えは loadAll からの推定。

必要条件: 攻撃者が isInstalled() より前に /install を取得していること。その後、運用者がインストールを完了。同じ Wicket ページ id が引き続き POST される。公式 docker イメージは既にインストール済みのため、これは tarball の初回起動期間(および再インストール時)に該当します。

閉じたままの隣接面

面理由
インストール後の新規 GET /installコンストラクタが /signin にリダイレクト (InstallWizardPage.java:31-34)。ラボ: 新規セッションは signin に着地。
インストール前の未認証 SOAP ログインヘルス installed=false; ウィザード完了までログイン失敗。
Tomcat manager / H2 consoleこのピンでは manager は除外、H2 console はオフ。

発見の経緯

コンストラクタのロックは「インストール後のインストール」に対する完全な修正に見えます。しかし checkInstalled は依然としてログを出力するだけです。Wicket はページをセッションに保存します。isInstalled() をまたいだセッションは、依然として loadAll を呼び出す Finish ボタンを保持します。

admin.sh -i は別の JVM であり、Tomcat の CryptProvider をロードしないため、このラボでは2つ目のウェブウィザードを最初のインストーラとして、古いページを攻撃者として使用します。

ラボ

cd lab
./run.sh

ループバック http://127.0.0.1:18159/openmeetings。目撃した最終行:

SUCCESS OPENMEETINGS-STALE-INSTALL-WITNESS

推奨される修正

checkInstalled は、すでにインストール済みの場合に return(または throw)しなければなりません。Finish をワンタイムのインストールトークンにバインドしてください。isInstalled() が反転したら、セッションから Wicket ページを削除してください。管理者がすでに存在する場合、loadInitUserAndGroup から 2 人目の ADMIN を挿入しないでください。

連絡先

Abraxas Labs - https://abraxaslabs.tech - https://github.com/abraxas - https://x.com/abraxas_null - [email protected]

ベンダー: [email protected]

ツールをダウンロード