2016-11-16 15 views
1

私はセッションクッキーのためにASP.NETコアのCookieミドルウェアを使用しています。セッションCookieデータは、Data Protection APIを使用してフレームワークによって暗号化されます。ASP.NET Coreのデータ保護APIはリプレイ攻撃を防ぎますか?

保護のレベルがこのプロセスからどの程度詳細であるかを理解したかっただけです。

  • クッキーデータがブラウザで輸送中や安静時に見るとHTTP

  • 上で盗聴場合

  • Cookieデータを再生することができる耐タンパ性であることができない:これらは私の現在の仮定されています発行され、これらの仮定のいずれかが間違っているか、それ以上必要な場合はHTTPS

経由でのみ送信された場合に

  • クッキーデータを再生することができません詳細をお答えいただければ幸いです。

  • 答えて

    2

    認証クッキーはデフォルトでHttpOnlyとマークされていますが、攻撃者がブラウザのコンテナからCookieを盗んだり、犠牲者のマシンに不正なソフトウェアをインストールした場合、悪意のある要求を行うことはできません。


    今後、ASP.NET Coreは、「TLSトークンバインディング」と呼ばれる機能をサポートし、認証Cookieを盗むのをはるかに困難にしています。

    この機能により、サーバとユーザエージェントの両方でサポートされている場合、この機能により、認証クッキーやベアラトークンなどの機密データを元のクライアント(ブラウザなど)のみが知っている秘密の値でバインドできます。

    ASP.NETコアでは、この機能は暗号化レベルで実装されます。ブラウザによって送信される秘密は、認証Cookieを保護および保護解除するためにData Protectionによって使用される暗号化/誰も対応するトークンを送信せずに盗まれたCookieを使用することはできません。

    +0

    注:TLSトークンバインディングはCookieミドルウェアで既に実装されていますが、この機能は公式サーバー(WebListenerやKestrel、IISの背後にあっても)ではサポートされていません。進捗状況は次のとおりです:https://github.com/aspnet/WebListener/issues/231 https://github.com/aspnet/KestrelHttpServer/issues/736 https://github.com/aspnet/AspNetCoreModule/issues/24 – Pinpoint

    +0

    TLSトークンバインディング情報をありがとう、私はそれに注目します。 – Sam

    関連する問題