私はブログ投稿を読みました GitHubはSSLに移行しましたが、Firesheepableのままです サイトがhttpsのみを使用している場合でも、cookieを暗号化せずに送信できると主張しました。彼らはクッキーは「安全な旗」でマークされるべきだと書いていますが、私はその旗がどのように見えるか知りません。
Httpsのみを使用しているサイトで、Cookieが暗号化されたhttpsでのみ送信され、暗号化されていないhttpでは送信されないことを確認するにはどうすればよいですか?
Cookieセキュアフラグは次のようになります。
安全;
それでおしまい。
これは、Httpヘッダーの最後に表示されます。
Set-Cookie:mycookie = somevalue; path =/securesite /; Expires = 12/12/2010;安全; httpOnly;
もちろん、それを確認するには、プロキシまたはスニファを接続するだけです(私は優れた Fiddler を使用しています)。
*ボーナス:httpOnly属性もそこに入れました。JavaScriptスペースからのCookieアクセスから保護します。 XSS経由。
Firebug(Firefoxの拡張機能: http://getfirebug.com/ )などのツールを使用して確認できます。 Cookieは「安全」と表示されます。
また、Firefoxを使用している場合は、[個別のCookieを削除]ウィンドウで確認できます。
開発の観点からは、「安全な」Cookieは通常のCookieと同じですが、追加のパラメーターが含まれています。例えば.
SessionId=blah; path=/; secure; HttpOnly
うまくいけば、これを簡単に追加できるサポートを備えた開発フレームワーク-ヘルプが必要な場合は、使用しているプラットフォームをお知らせください。
そこにいる間、JavaScriptでCookieを操作していない場合はHttpOnlyフラグも追加することをお勧めします。これにより、一部のXSS攻撃からのCookieがさらに保護されます。
これを達成するためにgoogle chromeのプラグインを使用することもできます Advance REST Client
出力例は次のようになります。
Connection: keep-alive
Strict-Transport-Security: max-age=31536000
Content-Type: application/json
Content-Length: 104
X-Content-Type-Options: nosniff
Server: WEBrick/1.3.1 (Ruby/2.0.0/2015-12-16)
Date: Thu, 25 Aug 2016 07:15:57 GMT
Set-Cookie: your.cookie.name=some-hash-uuid-here; domain=your-backend-hostname.com; path=/; expires=Sat, 24 Sep 2016 07:15:57 -0000; HttpOnly; secure
Via: 1.1 vegur
'Set-Cookie'属性の値の最後にあるように、いくつかのコメントとしてWord 'secure'が表示されます以前の回答の時間だけでなく、言及することが重要な「Strict-Transport-Security」という属性があることに注意してください。