メインコンテンツまでスキップ

5. Security Considerations (セキュリティに関する考慮事項)

5. Security Considerations (セキュリティに関する考慮事項)

この文書は、DTLS を使用して SRTP 鍵を確立する方法について説明します。最終的な SRTP セッションのセキュリティプロパティは、DTLS と SRTP の組み合わせによって決定されます。

5.1 DTLS ハンドシェイクのセキュリティ

鍵マテリアルのセキュリティは、DTLS ハンドシェイクのセキュリティに完全に依存します攻撃者が DTLS ハンドシェイクを侵害できる場合 (たとえば、中間者攻撃を通じて)、SRTP マスター鍵を取得し、すべての SRTP トラフィックを認証および復号化できます。

したがって、次が重要です:

  1. DTLS 実装が安全で脆弱性がないこと
  2. 強力な暗号スイートが使用されること
  3. エンドポイントが互いの証明書を適切に認証すること
  4. 証明書が適切に検証されること

5.2 パケットルーティングと多重化

DTLS-SRTP 実装は、次の間で着信パケットを適切に逆多重化しなければなりません:

  • DTLS パケット (ハンドシェイクおよびアラートメッセージ)
  • SRTP パケット (暗号化されたメディア)
  • SRTCP パケット (暗号化された制御)
  • STUN パケット (NAT トラバーサル)

これらのパケットタイプを適切に区別できないと、セキュリティ脆弱性につながる可能性があります。逆多重化アルゴリズムはパケットの最初のバイトに基づいており、明確になるように設計されています。

5.3 リプレイ保護

SRTP にはリプレイ保護メカニズムが含まれています。ただし、DTLS-SRTP 実装は、リプレイ攻撃を防ぐために、DTLS レコードシーケンス番号が再鍵交換操作で再利用されないことを確保しなければなりません。

5.4 機密性と認証

DTLS-SRTP は、機密性 (暗号化を通じて) と認証 (メッセージ認証コードを通じて) の両方を提供します。両方のプロパティは、安全なメディア伝送に不可欠です。特定のアプリケーション要件がそうすることを正当化しない限り、実装はこれらのプロパティの 1 つだけを提供する SRTP 保護プロファイルを使用すべきではありません。

5.5 完全前方秘匿性

適切な鍵交換アルゴリズム (たとえば、エフェメラル Diffie-Hellman) が使用される場合、DTLS は完全前方秘匿性 (Perfect Forward Secrecy, PFS) を提供できます。PFS が重要な場合、実装はこのプロパティを提供する暗号スイートを使用すべきです。

5.6 アイデンティティバインディング

DTLS ハンドシェイクで認証されたアイデンティティは、さまざまな形式のアイデンティティ誤バインディング攻撃を防ぐために、シグナリングチャネルで使用されるアイデンティティと暗号的にバインドされるべきです。