Content Security Policy (CSP) の
再度集計して、
現在の ポリシー定義
現状の
Content-Security-Policy-Report-Only: default-src 'self'; script-src 'self' *.disqus.com pagead2.googlesyndication.com www.google-analytics.com; img-src 'self' *.disqus.com *.disquscdn.com *.googleusercontent.com *.google.com googledrive.com report-uri /report/
CSPの レポートデータの 収集と、 集計に ついて
adamalton/django-csp-reports: Django app for handling browser reports from Content Security Policy violations と
ログ出力だけして
面倒く
MongoDB に
1. django-csp-reports
に
- settings.py
CSP_REPORTS_ADDITIONAL_HANDLERS = ["blog.settings.save_csp_report"] # Django-CSP-Reports HANDLER function import pymongo import datetime import json def save_csp_report(request): reports_collection = __get_reports_collection() jsn = request.body if isinstance(jsn, bytes): jsn = jsn.decode('utf-8') json_dict = json.loads(jsn) json_dict = json_dict["csp-report"] json_dict.update({"create_date" : datetime.datetime.utcnow()}) reports_collection.insert_one(json_dict) def __get_reports_collection(): client = pymongo.MongoClient(host='{your_host}', port={your_port) csp_analyze_db = client.csp_analyze reports_collection = csp_analyze_db.reports return reports_collection
上記で、
スプレッドシートで
- mongoexport
mongoexport --db csp_analyze --csv --collection reports --out export.csv --fields \ create_date,\ blocked-uri,\ column-number,\ disposition,\ document-uri,\ effective-directive,\ line-number,\ original-policy,\ referrer,\ source-file,\ status-code,\ violated-directive,\ script-sample
集計と、 修正方針
Google データスタジオをviolated-directive
ごとの、
blocked-uri
を
violated-directive
ごとのblocked-uri
の 集計結果
violated-directive : style-src
での 集計
inline
と、c.disquscdn.com
ドメインに
inline
の
blog で
ここは
violated-directive : frame-src
での 集計
以下の
googleads.g.doubleclick.net
disqus.com
staticxx.facebook.com
pstatic.eshopcomp.com
xx.xcetkbl.com
disqus.com
は
googleads.g.doubleclick.net
、staticxx.facebook.com
、pstatic.eshopcomp.com
、xx.xcetkbl.com
は
なんの
googleads.g.doubleclick.net
「フォーム送信」 イベント大量発生の 怪。リファラは 「googleads.g.doubleclick.net/pagead/ads」? - アイデアの 甕
GoogleAnalyticesで、広告出稿してないのに 参照元に googleads.g.doubleclick.netが 急に 出てきた 理由が わかった [自分で なんとかする Web] staticxx.facebook.com
これは、facebook の イイね ボタン、や、 sharebutton を 設定していると、 アクセスする domain のようです。
管理元もfacebook だったので、 許可ドメインと して 設定します。 pstatic.eshopcomp.com
アドウェア (Adware) っぽいドメインなので、 これは 拒否して おきます。 2
これは当ブログから リンクが 貼って あるわけではなく、 おそらく アクセスした 人の ブラウザに インストールされていて、
当ブログに表示された タイミングで、 ドメインに アクセスに いっていそうに 思います。 ちょっと おっかないです。 xx.xcetkbl.com
これもよくわからない ドメインなので、 拒否して おきます。 3
情報が全然なくてよく わかりませんでした。
violated-directive : frame-src
での 集計
eval
と、disqus.com
、c.disquscdn.com
ドメインに
eval
も
ダメなようです。
show_ads_impl.js
とeval
実行しているようです。
violated-directive : connect-src
での 集計
links.services.disqus.com
での
disqus 関連の
violated-directive : img-src
での 集計
data
と、googledrive.com
、ssl.google-analytics.com
ドメインに
data
は
data
を
リンクしている
violated-directive : font-src
での 集計
fonts.gstatic.com
ドメインに
自サイトで
ので、
円グラフ推しでしたが、
変更後の ポリシー定義
出力された 定義自体
変更後の
実際はpretty
に
この
それでも
Content-Security-Policy-Report-Only: default-src 'self'; frame-src 'self' googleads.g.doubleclick.net staticxx.facebook.com *.disqus.com disqus.com; script-src 'self' 'unsafe-inline' 'unsafe-eval' pagead2.googlesyndication.com www.google-analytics.com *.disqus.com c.disquscdn.com; style-src 'self' 'unsafe-inline' *.disquscdn.com; img-src 'self' *.disqus.com *.disquscdn.com *.googleusercontent.com *.google.com *.googledrive.comgoogledrive.com data:; connect-src 'self' *.disqus.com; font-src 'self' fonts.gstatic.com; report-uri /report/
参考
以下、
CSP の
今後
1回の
が、Content-Security-Policy-Report-Only
で
最終的には、Content-Security-Policy-Report-Only
は
やってみての
を
最初は、
会社で
問い
って
しばらく、
以上です。
コメント