web-dev-qa-db-ja.com

CDN JavaScriptの整合性を確認する

CDNは、jqueryなどの頻繁に使用されるJavaScriptライブラリのキャッシュを許可することにより、Webサイトのロードを高速化します。クライアントにJavaScriptを提供する前に、JavaScriptが変更されているかどうかをどのようにして知ることができますか?

例えば。 jquery.jsのハッシュを比較して、公式Webサイトのハッシュと一致することを確認しました。次に、自分のWebページにリンクを挿入します。 2週間後、CDNは、キーロガーが埋め込まれた悪意のあるコピーに置き換えます。クライアントが私のWebページにアクセスすると、悪意のあるスクリプトがダウンロードされ、すべての入力をログに記録してサーバーに投稿します。

スクリプトを実行する前に、Crypto.JSなどのライブラリを使用して、スクリプトのmd5チェックサムを検証できますか?エクスプロイトはクライアント側で機能するため、これはJavaScriptで行う必要があります。

6
limbenjamin

これはあなたが探しているものです-サブリソースの整合性:

概要: http://qnimate.com/how-to-make-browsers-verify-fetched-resources-content/

サブリソースの整合性は、最新のブラウザでのみサポートされています。

10
Ben Richard