0

data从服务器返回的易受 XSS 攻击。在使用类似的东西将数据发送到客户端之前,我是否需要在服务器上对数据进行清理htmlspecialchar(),或者是否$.get()需要对 XSS 进行中间处理?谢谢

$.get('getData.php',
function (data){
    $('#div1').text(data.div1);
    $('#div2').html(data.div2);
    $('#textarea').val(data.textarea);
},'json');
4

1 回答 1

0
$('#div1').text(data.div1);

这不会受到 XSS 的影响,因为您正在更改元素的文本。这会照顾你的用途htmlspecialchars

$('#div2').html(data.div2);

这是因为您更改的是html而不是文本,因此如果您不知道自己的响应,有人可以在此处放置<script>标签并在您的页面上运行任意代码。

$('#textarea').val(data.textarea);

也可以,因为它会更改文本区域的内容。

于 2013-05-28T13:16:59.553 回答