セキュリティとプライバシーのホワイトペーパー (概要)第 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 によって裏付けられます。