私はFortifyのセキュリティ研究グループのメンバーです。この問題が原因で混乱が生じていることをお詫び申し上げます。私たちは、この種の問題を提示するという非常に良い仕事をしていません。問題の一部はカテゴリ名だと思います。検証メカニズムに問題があると言っているのではなく、この状況に適切な検証であるかどうかを判断できないだけです。
言い換えれば、特定のコンテキストに適した検証が何であるかはわかりません。このため、MicrosoftのAntiXSSライブラリにあるものであっても、HTMLエンコーディング関数をそのままXSSに対して検証するものとして認識していません。
正しい解決策は、HtmlEncodeを使用してHTMLページの本文にユーザー名を出力する場合、元のコードで問題ありません。エンコードされたユーザー名がURLで使用されている場合、XSSに対して脆弱である可能性があります。Fortifyでは、独自のコードで同様の問題が見つかった場合、検証がコンテキストと一致する場合は、「問題ではない」とマークします。
これらの問題を取り巻く問題は、ルールをより正確で理解しやすいものにするために微調整を続けていることを認識しています。3か月ごとに新しいルールをリリースし、今後のリリースでいくつかの変更を加える予定です。第4四半期には、問題を不適切な検証(ブラックリストのエンコードやその他の弱い検証スキーム用)とコンテキスト依存の検証(発生している問題の種類)に分割する予定です。さらにサポートが必要な場合はお知らせください。
(HTMLエンコーディングがすべての問題を解決しない理由のOWASP説明へのリンク:
http ://www.owasp.org/index.php/XSS_(Cross_Site_Scripting)_Prevention_Cheat_Sheet#Why_Can.27t_I_Just_HTML_Entity_Encode_Untrusted_Data.3F )