2

SignalR で開発しているチャット アプリケーションがあります。チャットでは、ユーザーがメッセージを送信します。ユーザーが JavaScript などを送信できないように、安全にしたいと考えています。注意すべき点は何ですか (タグの削除など)? チャットはデータベースには入りません。あるユーザーのテキスト領域から、接続されている他のユーザーのブラウザーにメッセージをリレーするだけです。

4

1 に答える 1

2

基本的に、XSS から保護する必要があります。https: //www.owasp.org/index.php/XSS_(Cross_Site_Scripting)_Prevention_Cheat_Sheet# Escaping_.28aka_Output_Encoding.29 の「エスケープ (別名出力エンコーディング)」を参照してください。

ソースで入力された文字は、ターゲット ブラウザに出力するときに HTML エンコードする必要があります。<script>これにより、表示用に HTMLなどのシーケンスが変換されます。

&lt;script&gt;

個人的には、わざわざタグを削除するつもりはありません。出力のサニタイズは安全であり、ユーザーが制限なく自由に通信できるようにするための方法だと思います (ユーザーが誰かにコードのスニペットを送信し、あなたのアプリケーションはすべての HTML タグを取り除いていますか?)。

于 2012-08-03T07:55:39.550 に答える