[解決済み] JavaScriptでHttpOnlyクッキーを読み取る方法
質問
編集
とはどういう意味ですか? 安全 cookie"はあいまいです。明確にするために
-
を介して送信されるような安全な https:// プロトコルで送信されます。 ではなく プレーンテキストで送信されます。セキュアフラグと呼ばれるものです。
-
クッキーがブラウザで実行されているJavaScriptによって読み取られることがないように、安全です。 ブラウザで実行されているJavascriptでは読み取れないということです。
document.cookie
は動作しません。HttpOnly"フラグとして知られています。
この編集は、元の質問が2番目のケースについて尋ねていることを明確にするためのものです。
元の質問
JavaScriptでセキュアなクッキーを読み取る方法はあるのでしょうか?
私はそれを行うために使用しようとしました
document.cookie
を使ってみたところ、私が見る限りでは
に、セキュアクッキーとHttpOnlyフラグについての記事があります。
を見る限り、この方法でセキュアクッキーにアクセスすることはできません。
どなたか回避策を提案していただけませんか?
どのように解決するのですか?
異なるブラウザー は、HTTPOnly の場合、異なるセキュリティ対策を有効にします。 フラグが設定されている場合、ブラウザによって異なるセキュリティ対策が有効になります。 たとえば、OperaとSafariは、javascriptがクッキーに書き込むのを妨げません。しかし、すべての主要なブラウザの最新バージョンでは、読み取りは常に禁止されています。
しかし、もっと重要なのは
なぜ
を読みたいと思うのでしょうか?
HTTPOnly
クッキーを読む必要があるのでしょうか? もしあなたが開発者なら、このフラグを無効にして、あなたのコードがxssのテストをしていることを確認してください。可能な限り、このフラグを無効にしないことをお勧めします。 このフラグは
HTTPOnly
フラグと "secure flag" (クッキーを https で送信するように強制する) は常に設定する必要があります。
もしあなたが
攻撃者
であるならば、あなたは
セッションをハイジャックする
. にもかかわらず、セッションを乗っ取る簡単な方法があります。
HTTPOnly
フラグがあってもセッションを乗っ取る簡単な方法があります。セッションIDを知らなくても、セッションに乗ることは可能です。MySpace の
サミーワーム
がまさにそうでした。それは
XHR
を読み取るために
CSRF
トークンを読み取り、許可されたタスクを実行します。したがって、攻撃者は、ログオンしているユーザーができることはほとんど何でもできるのです。
人々はあまりにも多くの信頼を
HTTPOnly
のフラグを立てます。
XSS
はまだ悪用される可能性があります。機密性の高い機能の周りにバリアを設定する必要があります。例えば、パスワードの変更には現在のパスワードが必要です。管理者が新しいアカウントを作成するためには、キャプチャが必要で、これは
CSRF防止技術
で簡単に回避することはできません。
XHR
.
関連
-
[解決済み] 配列から特定の項目を削除するにはどうすればよいですか?
-
[解決済み] jQueryで要素が非表示になっているかどうかを確認するには?
-
[解決済み] JavaScriptで "use strict "は何をするのか、その根拠は?
-
[解決済み] JavaScriptで文字列が部分文字列を含むかどうかを確認する方法は?
-
[解決済み] あるJavaScriptファイルを他のJavaScriptファイルにインクルードするにはどうすればよいですか?
-
[解決済み] JavaScriptでタイムスタンプを取得する方法は?
-
[解決済み】別のウェブページにリダイレクトするにはどうすればいいですか?
-
[解決済み】JavaScriptで文字列の出現箇所をすべて置換する方法
-
[解決済み】オブジェクトからプロパティを削除する(JavaScript)
-
[解決済み] javascriptで文字列から関数を作成する方法はありますか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Angularjs - 現在の日付を表示する
-
[解決済み] JavaScriptを使用してHTML要素に属性を追加/更新するには?
-
[解決済み] jQueryの$という記号の意味は何ですか?
-
[解決済み] Chromeの拡張機能開発にWebStormを使用するにはどうすればよいですか?
-
[解決済み] BlobからArrayBufferへ移行する方法
-
[解決済み] イテレータでmap()を使用する
-
[解決済み] 文字列とラベルのローカライズとグローバリゼーションのベストプラクティス【終了しました
-
[解決済み] <ng-content>が空かどうかを確認する方法は?(これまでのAngular 2+で)
-
[解決済み] JavaScript で `throw` の後に `return` をする必要がありますか?
-
[解決済み] これは純関数ですか?