我刚刚发现,因为默认情况下 ValidateRequest = true,所以默认情况下,您不能在任何输入字段中输入“<”或“>”。
对我来说,对 XSS 攻击不太了解,这似乎很受限制。
为了解决这个问题,我意识到我可以使用 validateRequest = false,并对用户数据进行编码。显然,微软有充分的理由设置 validateRequest = true,所以现在的问题是我有一个包含很多页面的整个站点,所有这些都是“无法放置 < 或 > 问题”。
我的问题是我只有两个选择吗?
1) 保留 validateRequest = true 并且根本不允许用户输入 < 或 > 2) 切换 validateRequest = false 并采取预防措施。
如果为 2,我是否打算对所有数据输入进行编码?就像从登录名和密码到用户文本到搜索条件的文本字段一样?还是我只需要对某些输入进行操作?如果是这样,我应该定位哪些领域?