LWS の SVG 許可リスト

SVG は、寛容なアプローチで外部リソースを読み込み実行するため、クロスサイトスクリプティング (XSS) 攻撃の標的になる可能性があります。LWS は、悪意のある可能性のあるコンテンツに遭遇したとき、XSS 攻撃を防ぐために SVG サニタイズルールを適用します。

SVG 言語には、<svg> タグ内で使用できる広範な要素があります。

以下に、LWS が安全だと見なし、サニタイズ後に svg 要素に残すことを許可する要素のリストを示します。LWS は、このリストに含まれていない要素を削除します。

  • a, altglyph, altglyphdef, altglyphitem, animatecolor, animatemotion, animatetransform, audio
  • canvas, circle, clippath
  • defs, desc
  • ellipse
  • filter, font
  • g, glyph, glyphref
  • hkern
  • image
  • line, lineargradient
  • marker, mask, mpath
  • path, pattern, polygon, polyline
  • radialgradient, rect
  • stop, switch, symbol
  • text, textpath, title, tref, tspan
  • use
  • video, view, vkern

たとえば、この svg 要素には、許可されている g 要素と、許可されていない script 要素が含まれています。

サニタイズ後、このコードは次のようになります。