
CVE-2025-9886 および CVE-2025-9952 の開示
CVE-2025-9886 および CVE-2025-9952 の開示。
このリポジトリは、sergiotrinity によって開発された WordPress プラグイン Trinity Audio <= 5.20.1 で発見された脆弱性を開示するものです。
| CVE ID | 種類 | コンポーネント | 影響 |
|---|
| CVE-2025-9886 | クロスサイトリクエストフォージェリ | admin/inc/post-management.php | 被害者のセッション下で投稿の Trinity Audio を一括有効化/無効化 |
| CVE-2025-9952 | 反射型クロスサイトスクリプティング | admin/inc/post-management.php | 任意のスクリプト実行 |
影響を受けるコンポーネント: 投稿管理ページハンドラー (admin/inc/post-management.php)
攻撃ベクトル: wp-admin/admin.php?page=trinity_audio_post_management へのクロスオリジン POST
トリガー: 認証済み管理者が、細工されたフォームを自動送信する攻撃者制御のページを訪問する
影響: 攻撃者は管理者の権限で一括状態変更 (全投稿または日付範囲に対する Trinity Audio の有効化/無効化) を強制し、完全性を損ない、場合によっては可用性にも影響を与える
影響を受けるコンポーネント: 投稿管理ページハンドラー (admin/inc/post-management.php)
攻撃ベクトル: post-management-action=activate-all-posts-range、range-before-after=after、および HTML が続く有効な日付を伴う wp-admin/admin.php?page=trinity_audio_post_management へのクロスオリジン POST
トリガー: 認証済み管理者が、細工されたフォームを自動送信する攻撃者制御のページを訪問する。指定された日付より後に公開された投稿が少なくとも 1 件存在する必要がある。
影響: 管理者のオリジンで任意の JavaScript が実行され、セッションの窃取、設定の改ざん、または CSRF の連鎖が可能になる。
これら 2 つの脆弱性を組み合わせることで、攻撃者はユーザーを以下のフォームを含むサイトに誘導し、任意のスクリプトを実行させることができます。
<form method="POST" action="https://victim.example.com/wp-admin/admin.php?page=trinity_audio_post_management">
<input type="hidden" name="action" value="1">
<input type="hidden" name="post-management-action" value="activate-all-posts-range">
<input type="hidden" name="range-before-after" value="after">
<input type="hidden" name="range-date" value="2025-09-03<img src=x onerror=alert(document.domain)>">
</form>
<script>document.forms[0].submit();</script>
CSRF(CVE-2025-9886): 状態を変更するエンドポイントは、CSRF 対策なしでクロスオリジンリクエストを受け入れます。nonce 検証 (check_admin_referer/wp_verify_nonce) も Origin/Referer の検証もありません。Cookie が自動的に送信されるため、攻撃者は認証済みユーザーのセッション下でアクションを実行させることができます。
反射型 XSS(CVE-2025-9952): 投稿管理ハンドラー (admin/inc/post-management.php) は、range-date の POST 値を出力エンコーディングなし (esc_html()/wp_kses() なし) で成功通知に埋め込み、HTML/JS インジェクションを可能にします。
一見ただのCSRFとSelfXSSだが、これらを組み合わせることでCSRFを成功させれば任意のJSを実行させることが出来る。 このような面白いPoCを作成することが出来て楽しかった。
名前: MooseLove
役割: 独立系セキュリティ研究者 / バグハンター
連絡先: リクエストに応じて提供
このアドバイザリは、公的なセキュリティ啓発のために提供されています。出典を明示すれば自由に共有できます。