我有我的网站,当我键入 http://someurl/login.aspx/'== alert(1)==' 导致网站打开一个指向已反映的XSS的对话框。
当我尝试其他网站(例如google或facebook)时,它们都导致找不到404页面。
如何在我的网站上创建此类功能以避免将来与XSS相关的安全问题。
答案 0 :(得分:1)
将您的请求参数编码为javascript编码形式。市场上也有许多库可以对您的参数进行编码。 另外,请确保必须在HTML绑定快捷方式(<%#:)上使用JavaScriptEncode方法,因为该快捷方式仅适用于HTML上下文。
答案 1 :(得分:0)
请共享用于处理查询参数(==alert(1)==
)的代码。您可能会在不进行消毒的情况下接受用户输入,然后在JS上下文中将其打印回浏览器。有关更多详细信息,请参见here。
答案 2 :(得分:0)
这是javascript中url编码的基本示例
var uri = 'https://mozilla.org/?x=шеллы';
var encoded = encodeURI(uri);
console.log(encoded);
// expected output: "https://mozilla.org/?x=%D1%88%D0%B5%D0%BB%D0%BB%D1%8B"
try {
console.log(decodeURI(encoded));
// expected output: "https://mozilla.org/?x=шеллы""
} catch(e) { // catches a malformed URI
console.error(e);
}