data
, возвращенный с сервера, восприимчив к XSS. Нужно ли мне дезинфицировать данные на сервере, прежде чем отправлять их клиенту, используя что-то вроде htmlspecialchar()
, или $.get()
перемещаться по XSS? СпасибоЗащита от XSS при отображении с использованием Ajax
$.get('getData.php',
function (data){
$('#div1').text(data.div1);
$('#div2').html(data.div2);
$('#textarea').val(data.textarea);
},'json');
Спасибо, Бенджамин. Чтобы убедиться, что я понимаю, я должен использовать 'htmlspecialchars()' на '.html()', но не нужно на двух других. – user1032531
Вы не использовали бы '.html', чтобы начать с содержимого, которому вы полностью не доверяете. Я настоятельно рекомендую вам хранить _templates_ на стороне клиента и передавать _data_ с сервера, а затем использовать что-то вроде Mustache для визуализации этих шаблонов (Mustache избегает HTML-символов по умолчанию) –