web-dev-qa-db-ja.com

保存されているすべてのCookieをXSS攻撃で盗むことはできますか?

つまり、「document.cookies」を使用すると、ブラウザはそのWebサイトにのみ属するCookieを表示します。 (またはそうではありませんか?)では、XSS攻撃はデバイス/ブラウザーに保存されているすべてのCookieを盗む可能性がありますか?ありがとう。

1
user153376

document.cookieオブジェクトは、現在のドキュメントからCookieを取得します。 document は、documentオブジェクトを呼び出すJavaScriptが実行されているWebページを指します。したがって、JavaScriptは他のWebサイトからのCookieにアクセスできなくなります。これには明らかにXSS攻撃が含まれます。

「document.cookies」を使用すると、ブラウザには、そのWebサイトにのみ属するCookieが表示されます。

このステートメントは完全に真実ではありません。 document.cookieオブジェクトを使用すると、JavaScriptは現在のドキュメントのCookieにアクセスできますが、 HTTPOnlyフラグ を持たないものにのみアクセスできます。このフラグは、JavaScriptがそれらのCookieにアクセスできないようにするために使用され、ブラウザによって強制されるポリシーです。 XSS経由で盗まれるのを防ぐために、セッションCookieでそのフラグをオンにすることをお勧めします

3
Mr. E

XSSのタイプによって異なります。 WebサイトのXSS脆弱性は、問題のドメイン(および、Cookieのいずれかでドメインをルートドメインに設定している場合はサブドメイン)の非HTTPOnly Cookieを盗むためにのみ使用できます。ただし、chrome拡張(または他のタイプのユニバーサルXSS)でXSSを利用できた場合、HTTPOnly Cookieを含むすべてのページのCookieを盗むことができる可能性があります。

2
Erlend

ブラウザーを使用する場合、ユーザーがいるWebサイトはそのCookieにのみアクセスできます。他のWebサイトのCookieにはアクセスできません。

したがって、XSSを使用すると、脆弱なWebサイトから保存されているすべてのCookieを盗むことができます。これはdocument.cookieの制限ではなく、ブラウザの制限です。あなたはこれでより詳細な答えを持つことができます ウェブページは別のページのクッキーを読むことができます

0
Florian