私は、次の画像でMustacheJSテンプレートいる:このMustacheJS-SnippenはXSS攻撃に対して安全ですか?
<div class="thumbnail" style='background-image: url({{avatar}});'></div>
{{avatar}}
変数は、検証せずに、ユーザの入力から移入され、ユーザは、彼らが望むものは何でも入力することができます。
これは安全ですか、誰かが悪意のある入力を渡してこれを介してXSSを実行できますか?
私は、次の画像でMustacheJSテンプレートいる:このMustacheJS-SnippenはXSS攻撃に対して安全ですか?
<div class="thumbnail" style='background-image: url({{avatar}});'></div>
{{avatar}}
変数は、検証せずに、ユーザの入力から移入され、ユーザは、彼らが望むものは何でも入力することができます。
これは安全ですか、誰かが悪意のある入力を渡してこれを介してXSSを実行できますか?
最近のブラウザでは、スタイルXSSはもはや機能しません(IE11/Edge、最近のChromeまたはFirefoxではCSSからJSが実行されません)。
ブラウザのバージョンにもよりますが、それがベストプラクティスではないにしても、実際に動作する攻撃を思いつくのは簡単ではありません(私はそこで言葉遣いに非常に注意しました。最近のブラウザでこれを悪用する)。あなたのコメントで実演したように、Mustache htmlは自動的にいくつかの文字をエンコードします。
IEはX-UA-Compatible
で互換モードに切り替えることができます。この場合、選択したバージョンとまったく同じように動作しますが、そのバージョンの脆弱性がすべて含まれていますが、htmlエンコーディングのために悪用できません。
いいえ安全ではありません。入力の検証とサニタイズが必要です。 –
正確なコードを確認する必要があります。 – Feathercrown
@RoryMcCrossan JavaScriptビーイングを実行する入力値を入力してください。お返事をありがとうございます! – Tream