非常に大きな Web アプリケーションがあります。
合計で約 120.000 行。
このアプリケーションでは、ユーザーはテキストを入力する可能性がたくさんあります。
ユーザー情報、フォルダ、グループなど。
一部のユーザーは、 のようにさまざまなオブジェクトに名前を付けたいと考えていますAge < 20
。
ASP.NET は、javascript インジェクションを防ぐための "<" のためにそのような入力をブロックするため、問題がありました。
これらの安全メカニズムをシャットダウンする方法を見つけましたが、現在、アプリケーションは安全ではありません。
質問は次のとおり
です。アプリケーションがそのような入力をプレーンテキストとして処理するために、設定やプロパティ、またはグローバルに設定できるものはありますか (アプリケーション全体に対して 1 点で)。
たとえば、ユーザーがフォルダに名前を付けたい場合は、<script>alert("ALERT");</script>
そのように名前を付ける必要があり、同じように表示されます<script>alert("ALERT");</script>
が、スクリプトは実行されません。
HTML の場合も同様ですFolder<br>One
。Folder<br>One
Folder
One
もちろん、HTML-Encode/-Decode を使用することもできますが、プロジェクト全体を調べて、入力が行われたり表示されたりする場所に Encoding/Decoding を追加したくありません...
また、グローバル ソリューションは将来の開発で間違いを犯します。
もう一度質問: すべてのテキストを text と同じように処理する方法はありますか? そして、それは可能な限りグローバルですか?
私の問題を理解し、可能性を知っていただければ幸いです。