必要になったので。SECのセキュアプログラミング講座を根拠に、「<」「>」「&」「'」「"」をサニタイズ。
sanitaize.encode(文字列)
でサニタイジング、 sanitaize.decode(文字列)
で元に戻す。
sanitaize = {
encode : function (str) {
return str.replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>').replace(/"/g, '"').replace(/'/g, ''');
},
decode : function (str) {
return str.replace(/</g, '<').replace(/>/g, '>').replace(/"/g, '"').replace(/'/g, '\'').replace(/&/g, '&');
}
};
参考URL
IPA ISEC セキュア・プログラミング講座:Webアプリケーション編 第8章 マッシュアップ:クライアントサイドマッシュアップ: #3 クライアント側コードに起因するスクリプト注入対策