wysihtml5 エディターを使用して、ユーザーが ASP.NET MVC4 ディスカッション フォーラムにメッセージを投稿できるようにしています。これらのメッセージは mssql データベースに格納され、Razor 構文で画面に表示されます。
@Html.Raw(post.Html)
これらのユーザーは認証されていますが、次のようなインジェクション攻撃に対して脆弱にならないようにしたいと考えています。
ユーザー投稿:
<script>alert('Hacked:' + secretInformation)</script>
MVC レンダリング アラート ボックス:
Hacked: ::secret info::
コントローラーで設定することにより、htmlをdbに保存できるようにしました。
[ValidateInput(false)]
クリーンな HTML コードのみをレンダリングし、攻撃に対して脆弱ではないことを確認するには、どのような手順を実行すればよいですか?