如何在网站URL名称中删除Reflected Cross-site Scripting

问题描述 投票:0回答:3

我有我的网站,当我输入http://someurl/login.aspx/'== alert(1)=='导致网站打开一个对话框,导致反映的XSS。

当我尝试其他网站,如谷歌或脸书时,他们都导致找不到页面404页面。

如何在我的网站中创建这种功能,以避免任何与XSS相关的未来安全问题。

security xss csrf owasp
3个回答
1
投票

将您的请求参数编码为javascript编码形式。市场上还有许多库可用于对参数进行编码。此外,请确保必须在HTML绑定快捷方式(<%#:)上使用JavaScriptEncode方法,因为该快捷方式仅适用于HTML上下文。


0
投票

请分享处理查询参数(==alert(1)==)的代码。您可能在没有清理的情况下获取用户输入,并在JS上下文中将其打印回浏览器。有关详细信息,请参阅here


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);

}

© www.soinside.com 2019 - 2024. All rights reserved.