CSP improvements
まだ誰も着手していません。
評価
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 初心者へのやさしさ
- 25/100
調査の方向性
現在の CSP レスポンスと、issue で指定されているテンプレート pmaweb/templates/donate.html、sponsors.html、404.html から始めてください。Web サイトジェネレーターがヘッダーを設定する方法を追跡し、その後、可能な限り unsafe-inline を使わない、より厳格なポリシーの下で、インライン分析、PayPal フォーム、画像の使用が機能することを確認してください。
索引モデルが issue の本文から書いたものです。
説明
- CSP Improvements (for WebSite)
https://www.phpmyadmin.net/ return the following CSP header:
content-security-policy: default-src 'self'; script-src 'self' 'unsafe-inline' https://www.google-analytics.com/; img-src 'self' https://www.google-analytics.com/ https://www.paypalobjects.com/; style-src 'self' 'unsafe-inline'; child-src 'none'; object-src 'none'
2.1) Change Google Analytics loading
The usage of current Google Analytics code require unsafe-inline in script-src
fix: (by applying any of the below, the unsafe-inline can be removed from script-src)
move the inline code into external file
https://stackoverflow.com/questions/30939809/google-analytics-js-and-content-security-policy
or generate a hash for inline script:
https://www.w3.org/TR/2015/CR-CSP2-20150721/#script-src-hash-usage
2.2) Dynamic CSP usage
The https://www.paypalobjects.com/ in img-src is needed only in some pages, such as:
https://github.com/phpmyadmin/website/blob/master/pmaweb/templates/donate.html#L31
https://github.com/phpmyadmin/website/blob/master/pmaweb/templates/sponsors.html#L126
2.3) More Strict CSP Policy
The usage of action attribute is used in the below pages (to https://www.paypal.com/)
https://github.com/phpmyadmin/website/blob/92720e9120eee45b6872b535bb0c85c342e7772c/pmaweb/templates/donate.html#L22
https://github.com/phpmyadmin/website/blob/0da92e1c0fb1f00cfe9edad922b52dc22573fb74/pmaweb/templates/sponsors.html#L113
thus use form-action directive to white-list action locations
https://developer.mozilla.org/en/docs/Web/Security/CSP/CSP_policy_directives#form-action
- Missing CSP Policy
visiting:
https://www.phpmyadmin.net/fff/
result:
no CSP Policy sent, also the page load javascript from https://linkhelp.clients.google.com/ (need to add to script-src directive)
https://github.com/phpmyadmin/website/blob/master/pmaweb/templates/404.html#L23
- 主要言語
- Python
- スター
- 55
- フォーク
- 103
- PR マージ指標
- 30日以内にマージされた PR はありません
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
phpmyadmin/website のほかの issue
-
enhancement newbie
難易度 2/5 1〜3時間 初心者へのやさしさ 45/100
phpmyadmin/website#138 · リアクション 1 件 ·
-
New website UI オープンenhancement
難易度 5/5 1週間以上 初心者へのやさしさ 20/100
phpmyadmin/website#92 · コメント 17 件 ·
-
enhancement
難易度 5/5 1週間以上 初心者へのやさしさ 30/100
phpmyadmin/website#56 ·
-
enhancement hardening
難易度 4/5 3〜5日 初心者へのやさしさ 35/100
phpmyadmin/website#36 · コメント 3 件 ·
-
enhancement hardening
難易度 3/5 1〜2日 初心者へのやさしさ 35/100
phpmyadmin/website#30 · コメント 5 件 ·
phpmyadmin/website の issue をすべて見る
似ている issue
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
stephrobert/dsoxlab#238 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
sublimehq/package_control#1780 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
nwg-piotr/nwg-displays#145 ·