セキュリティとプライバシーのホワイトペーパー (概要)第 9 章

第 9 章 Web セキュリティとクライアントの分離

Web 層は、最も外部にさらされる部分です。この章では、FileBolt の Web セキュリティの基本方針を定めます。 厳格な CSP とヘッダー、機密性の高いページでのサードパーティスクリプトの排除、そしてインジェクションや UI の悪用に対する防御策です。

9.1 脅威

  • XSS、DOM インジェクション、サプライチェーン経由のスクリプト、クリックジャッキング、UI の偽装攻撃。
  • プロンプトインジェクションや UI の欺瞞によって、リンクや秘密情報をユーザーに明かさせる行為。
  • 安全でない保存方法やリファラー経由の漏えいによるトークンの盗難。

9.2 ページの分離

  • 機密性の高いページ (ダウンロード / 復号) では、サードパーティスクリプトを避け、依存関係を最小限にすべきです (SHOULD)。
  • パフォーマンスやセキュリティ機能のために必要な場合は、クロスオリジン分離を使用してもかまいません (MAY)。ただし、互換性は維持しなければなりません (MUST)。
  • ページは、URL の漏えいを防ぐために、厳格なリファラーポリシーを適用すべきです (SHOULD)。

9.3 インジェクション対策 / UI の悪用防止

  • 信頼できない入力は、すべて、DOM に挿入する前にエスケープまたはサニタイズしなければなりません (MUST)。
  • 信頼できない HTML はレンダリングしないでください。テキストとしての表示と、安全なテンプレート処理を優先します。
  • ユーザーが指定できる名前やメタデータがある場合は、長さと使用できる文字を制限します。

9.4 セキュリティヘッダーとブラウザーのポリシー

9.4.1 推奨されるヘッダー (例)

  • Content-Security-Policy。script-src は厳しく制限し、connect-src は適切に設定します。
  • Referrer-Policy: no-referrer または strict-origin-when-cross-origin。ページの要件に応じて選びます。
  • X-Content-Type-Options: nosniff、Permissions-Policy、および HSTS (第 5 章を参照)。

9.5 検証可能な証拠

  • 第三者レポートへの公開リンクは、/status に集約しています。
  • 証拠が扱うのは、Web セキュリティの基本的な状態 (TLS、ヘッダー) です。プロトコルレベルのゼロ知識に関するクレームは、設計上の制約とクレーム ID によって裏付けられます。