web-dev-qa-db-ja.com

CSPはすべてのGoogleドメインを許可しますか?

サイトのCSPを開発しようとしています https://www.lidl-tour.ro

現在、レポートのみモードで実行されるポリシーがあるため、現時点では何もブロックされていません。

サイトはgoogleads.g.doubleclick.netおよびstats.g.doubleclick.netに連絡します。そこで、これらのホストをホワイトリストに追加しました。

しかし、これらのサイトは(ユーザーを作成して)www.google.comおよびwww.google.YOURTLDからコンテンツをロードするようです。ブラウザが連絡したいところにCSP違反が報告されていることがわかります https://www.google.com.cyhttps://www.google.co.ukhttps://www.google.ithttps://www.google.de など。

ここで、すべてのGoogleドメインをCSPに配置したくありません。

https://www.google 。*を許可することを考えました(これがCSPでも有効かどうかはわかりません)が、この式は https: //www.google.co.uk

この場合、どのようにして有効なCSPを構築できますか?

14
HorstKevin

追加として-それだけではありません サポートされていません 、それがサポートされていたとしても、あなたはそれを望まないでしょう。

https://www.google.*https://www.google.co.ukだけでなくhttps://www.google.evilattacker.comにも一致するためです。そして、それは、攻撃者が大多数のサイトでCSPに対して最善のレバレッジを与えるため、攻撃者が使用するURLとまったく同じであると確信できます。

6
Matija Nalis

Googleもこれを読んで、ar.images.google.comとbe.images.google.comからこれらの画像を提供することでGoogleAdsとGoogle Analyticsを変更し、image-src: 'self' *.images.google.comを使用してCSPを設定できることを願っています。これは、現在のCSP標準を使用する場合、ホスト名でのみ、Content-Security-Policyヘッダーのトップレベルドメインにワイルドカードを使用できないためです。そして、Googleアナリティクスにとっては、大きな影響のない変化のように見えます。

ところで:Sentry.comはCSPレポートのURLを提供しています。

3
bbaassssiiee

ここでの問題はCSPに関するものではありませんが、CSPとGoogleアナリティクスおよび同様の追跡システムの目的が互いにどのように対立しているかに関係しています。

Content-Security-Policyヘッダーは、サイトの所有者が自分のページで実行されるすべてのコンテンツを認識および制御し、したがって他のすべてを除外することができるという前提の下で設計されました。これは、サードパーティがコードを実行しているページのトラッキングコードと広告コードでは実際には当てはまりません。

インターネットバンキングのウェブサイト、支払い処理業者などの「高セキュリティ」アプリケーションの場合、使用されるサードパーティシステムの数を最小限に抑えることができることがよくあります。銀行は、Googleを使用するのではなく、独自の分析システムを実行する傾向があり、インターネットバンキングアプリケーション内のページに第三者の広告を掲載する。これは、有効なCSPを使用するための1つのオプションを示しています。自分が制御するドメインで独自の追跡および広告コードをホストします。これは、中小企業にとって常に実行可能であるとは限りません。

また、サイトのセキュリティで保護された要素をサブドメインに移動して、オープンパーツのポリシーを緩和した厳密なCSPをサブドメインに適用することもできます。これは、静的なコンテンツ、またはユーザーが変更または追加できないと確信しているコンテンツは、広告/追跡と共に提供される可能性がある一方で、認証されたセクションまたはユーザーコンテンツが表示されるセクションは、既知のドメインに制限される可能性があることを意味します。完璧ではありませんが、すべてのホスト名を許可するオープンCSPよりも優れています。

3
Matthew

オンラインツールの使用を検討しましたか。 report-uri

[更新しました]

ホストのワイルドカードは無効です( この仕様 を参照):

各ソース式のホスト名には最大1つのワイルドカード(*)を含めることができ(MUST)、それは左端のDNSラベルでなければなりません(MUST)。

ユーザーの地理的位置に応じて、異なるCSPヘッダーを使用してWebページを提供することを検討しましたか?したがって、英国の人々は* .google.co.ukなどを許可するCSPを取得します。

0
lorenzog