Javascript 使用html()时的jquery xss预防
我用jquery编写了这行代码,有人告诉我这行代码容易受到xss攻击,因为我在使用html()函数注入原始数据之前没有对其进行转义 请让我知道如何转义数据以使其更安全。 (如果可以解决问题的话,我可以改用javascript,比如通过id获取元素等) var data=“来自用户或其他地方的一些数据”” $(“输出区域”).html(数据) 您必须使用:Javascript 使用html()时的jquery xss预防,javascript,jquery,xss,Javascript,Jquery,Xss,我用jquery编写了这行代码,有人告诉我这行代码容易受到xss攻击,因为我在使用html()函数注入原始数据之前没有对其进行转义 请让我知道如何转义数据以使其更安全。 (如果可以解决问题的话,我可以改用javascript,比如通过id获取元素等) var data=“来自用户或其他地方的一些数据”” $(“输出区域”).html(数据) 您必须使用: $("output_area").text(data) 如果要注入HTML代码,则需要从数据中提取并将它们作为文本添加到您自己构造的HTML
$("output_area").text(data)
如果要注入HTML代码,则需要从数据中提取并将它们作为
文本添加到您自己构造的HTML代码中($(“”).text(extracted段落)
,等等).如果数据来自服务器,并且最初是由用户在存储之前输入的,那么您实际上只会受到持久XSS的攻击。换句话说,验证输入是关键。感谢您的回复,我有一个字符串“Heading Text this is content”(标题文本这是内容)安全专家和web开发人员如果您可以将数据作为JSON(例如,{h:“Heading Text”,p:“this is content”}然后将.Text()放在-e.g.$('#container').append($('.Text(data.h)).append($('').Text(data.p))中,会很高兴。