XSSと対処方法に関するSOの多くの記事を読んだことがあります。一般的に、コンセンサスはブラックリスト以上のホワイトリストであり、正規表現を使用することは避けられます(扱うバリエーションが多すぎます)。TinyMCE、AntiXSS、MVC3、GetSafeHtmlFragment
私はASP.Net MVC3アプリケーションで作業しています。ユーザーエントリ(例:< strong>、< ul>、< li>など)からHTMLを表示できるようにする必要がありますが、XSSのリスクはありません。
私はNuget経由でAntiXSSパッケージを使用しています。私のモデルでは、私は
[AllowHtml]
public string UserDetails{ get; set; }
私はTinyMCEをテキストエリアにフックしています。私のコントローラで
、私は、ビューからのポストを取得し、それをサニタイズ:
using Microsoft.Security.Application;
...
string SanitizedDetails = Sanitizer.GetSafeHtmlFragment(model.UserDetails);
私の質問を:私は右のそれをしましたか?ほとんどのXSSの問題から保護していますか、間違ったツリーを吠えていますか?