2017-02-22 3 views
1

У меня есть библиотека вкладок javascript, которую я использовал, это всегда было хорошо, но с нашим недавним обновлением Fortify мы получаем критически важную ошибку в окне .Location часть кода (редактирования, должен отметить, что это исходный код, перед тем, как изменяется):Вкладки Javascript вызывают критическую ошибку (XSS) в HP fortify scan

var b=window.location.href; 

Наша первая модификация была:

var b = (escape(window.location.href.toString())); 

Когда это не удалось, мы нашли и попробовал следующее:

var b = (encodeID(window.location.href.toString())); 

function encodeID(s) { 
    if (s==='') return '_'; 
    return s.replace(/[^a-zA-Z0-9.-]/g, function(match) { 
    return '_'+match[0].charCodeAt(0).toString(16)+'_'; 
    }); 
} 

, но другой запуск Fortify все еще вызывает критические ошибки. Также пытался:

var b=encodeURIComponent(window.location.href); 

Критический.
У кого-нибудь есть мысли по поводу его прохождения?

+0

взгляните на это [ответ] (http://stackoverflow.com/a/24089350/3293044) –

+0

Я читал сегодня, но, я думаю, я не понимаю. Он говорит, что вариант 1 безопасен. Исходный код в библиотеке имеет var b = window.location.href; это должно быть безопасным, но это тоже важно. Я не назначаю адрес, по которому он идет, и за исключением того, что пользователь щелкает вкладку, у них нет других параметров ввода. Я понимаю, что кто-то может скопировать адрес из окна и использовать переданный параметр для лечения; однако я не понимаю, как это исправить. Все мои попытки выше встречали критические ошибки. –

ответ

1

@Carlos Mendieta Я согласен с вами. Я думаю, что Fortify неправильно сообщает о проблеме здесь. Вы не назначаете значение window.location.href, вы просто устанавливаете значение в переменной. Существует дискуссия об обмене стека безопасности security stack exchange: JS code giving xss vulnerability, который по существу утверждает то же самое. Я бы посмотрел, можете ли вы настроить Fortify, чтобы не сообщать об этом элементе.

+0

Оцените ввод. я дам этому сайту вид. Хотелось бы, чтобы мы могли точно настроить Fortify, но, к сожалению, мы не запускаем этот сервер и тех парней .. тьфу. Еще раз спасибо. –

Смежные вопросы