また、MutationObserverを使用すると、リッスンできるだけでなく、DOMツリーへの変更を防ぐことができます。 それについて考えて、私はあなたがまだ使用していない不必要なタグと属性をブロックできるライブラリを作りました。
次のようになります 。
{ "tagsType": "blacklist", "tags": [ "script" ], "attributesType": "blacklist", "attributes": { "*": ["onerror"] } }
たとえば、マニフェストを使用して、すべてのスクリプトタグと、strict_domの実行後に追加する必要のないすべてのonerror属性を切り取ります。 すなわち 実際、この方法で、サイト上の多くの潜在的なXSS脆弱性を排除することができます(この場合、実際にはそうではありません)。
マニフェストには次のパラメーターを含めることができます。
- olderUrl-ブラウザが古い場合にリダイレクトされるリンク(デフォルトでは無効)
- tagsType-ブラックリストまたはホワイトリストの原則を選択してタグを削除します
- tags-不要なタグのリスト
- attributesType-ブラックリストまたはホワイトリストの原則を選択して、タグの属性を削除します
- 属性-不要な属性のリスト
実際、これらはすべてMutationObserverを介して機能します。 ここでコードをのぞき見できます