6

サブリソース整合性属性のソフト統合を行いたいので、アプリケーションを壊していないことを確認してください。ただし、いくつかの場所を修正する必要があるという警告を表示するだけです。

そうするオプションはありますか?

4

2 に答える 2

1

SRI ハッシュが一致しない場合にのみ警告を表示することはお勧めしません。ユーザーとして警告が表示されたときは、すでに手遅れであり、潜在的に悪意のあるスクリプトがマシンで実行されています。

ServiceWorkerただし、 -A​​PI などを使用して目的の動作を実装できます<script data-integrity="xxxxxxxx">。そのためには、次のことを行います。

  1. 新規登録ServiceWorker
  2. fetchイベントを聞く
  3. [Client.postMessage]親への targetURL
  4. targetURL でスクリプト整合性ハッシュを取得し、次$('script[src=event.data.targetURL]').attr('data-integrity')
    を使用してクライアントにプッシュします。Worker.postMessage
  5. eG を使用して応答をハッシュするcryptojs.sha256
  6. ワーカー内のハッシュを一致させます
  7. ハッシュが一致する場合は、応答を返します。一致しない場合は、応答を返し、Client.postMessage再度使用して警告をトリガーします。
于 2019-04-01T14:52:34.080 に答える