私たちが開発したシステムは、セキュリティ上の欠陥のために Veracode を介して実行されました。モーダル ダイアログでビューをポップアップ表示する JavaScript 関数の「Web ページ内のスクリプト関連 HTML タグの不適切な無効化 (基本 XSS)」項目が強調表示されました。ビューにはデータ入力がなく、以前に入力したデータは表示されません。
問題はトランザクションIDですか?システムで生成され、隠しフィールドに保持されます。もしそうなら、ビューのカミソリ構文 ($.get によって返される) に適用することで、この問題を軽減するのに十分でしょうかHTML.Encode()
? transactionID
実際、Veracode は.html()
、javascript で を使用するたびにこのエラーを発生させるようです。JS ファイルを引き出すのは大変html()
な作業です。誰でもできる助けをいただければ幸いです。
var $dialog = $('<div></div>');
$dialog.dialog(
{
autoOpen: false,
height: 300,
width: 500,
modal: true,
title: ''
});
DisplayModalStatement($dialog);
function DisplayModalStatement(modalDialog) {
var transactionid = $('#TransactionId').val();
$.get($.globals.appActionRoot + '/StatementDialog',
{ transactionId: transactionid, wizardType: GetWizardType() },
function (data) {
modalDialog.html(data);
modalDialog.dialog('open');
}
);
}