在代码扫描过程中,我有以下c#代码被检测为潜在的跨站攻击。
ArrayList ListofProductCodeWithOverQuantity = new ArrayList();
string productCodeClean = Regex.Replace(Row.Cells[5].Text, "[^0-9A-Za-z _-]", "");
ListofProductCodeWithOverQuantity.Add(productCodeClean);
我确实尝试了Regex.Replace()函数,但在这种情况下似乎不起作用。我找到了很多防止XSS攻击的解决方案,但主要是在其他编程语言上。
我如何在这种情况下为c#申请XSS预防?
可能,其中一个字符串来自用户输入并最终出现在页面上。
如果你不检查它们是否有适当的编码,以确保它们不包含可执行代码,你就有可能陷入XSS。
所以,你应该在把你的文本放到页面上之前对它们进行编码。