やあ、
私はCSPを本当に理解していないので、etherpadインスタンスに適切なCSP構成を作成できません。 ここにいる誰かが、Etherpadを機能させ続けながら、セキュリティを向上させるための例を教えてもらえますか?
このような例を追加すると、ドキュメントが改善されると思います。
どうもありがとう。
Video.etherpad.comの結果は次のとおりです。
単純なnpm install ep_helmet
またはプラグインインストールUIを介してep_helmet
をインストールすると、Observatoryでhttps://observatory.mozilla.org/analyze/video.etherpad.com
問題の範囲は「どのCSPヘッダー」でしたが、私は少し正直に言って、攻撃者が利用できるヘッダー関連のエクスプロイトをもっと多くカバーすることにしました。 これにより、管理者はセキュリティを強化するための「ワンクリック」ソリューションを利用できます。
これは、正しいCSPヘッダーの問題をまだ「修正」していません。 CSPは、インラインJSが非常に多いため、一般的にEtherpadに実装するのは難しいです。 とても気になります。 そして、それは動的なので、私はナンスのアプローチを取る必要があり、それは多くのファイルに触れることを意味します。 それが可能かどうかさえわかりませんが、もう少し時間をかけて、どこにたどり着くかを見ていきます。 javascriptをhtmlファイルから移動する必要があることを確認しただけでも、努力する価値があります。 Imhounsafe-evalとunsafe-inlineは、取り組む価値のある2つの最大のベクトルです。多分明日。
かっこいいです。今度はCSPのマージ要求があり、更新されたヘルメットを公開します。
@muxatorがレビューするのを待っています。
私の修正に関する私の懸念は、プラグインがインラインjsを使用することが多いため、厳密なcspポリシーを有効にすると、一部のプラグインが機能しなくなることです。
今日はリベースしました。 このPRは非常に複雑なので、自分でマージしたくありません。
PRはナンスを処理するだけです。inlineJSの問題を修正するのには適していませんが、ほとんどの場合、 npm install ep_helmet
は1日を節約します:)
この問題は、最近のアクティビティがないため、自動的に古いものとしてマークされています。 それ以上のアクティビティが発生しない場合は閉じられます。 貢献していただきありがとうございます。