我想知道是否有其他人遇到过 Azure Front Door 和 Azure Web 应用程序防火墙的问题并有解决方案。
WAF 正在阻止对我们的 ASP.NET Web 应用程序的简单 GET 请求。被触发的规则是DefaultRuleSet-1.0-SQLI-942440 SQL Comment Sequence Detected。
根据这个截断的示例,我可以找到 sql 注释序列的唯一位置是 .AspNet.ApplicationCookie:RZI5CL3Uk8cJjmX3B8S-q0ou--OO--bctU5sx8FhazvyvfAH7wH。如果我删除 cookie 值中的 2 个破折号“--”,则请求成功通过防火墙。一旦我将它们添加回来,请求就会被相同的防火墙规则阻止。
看来我有两个选择。禁用我不想执行的规则(或将其从 Block 更改为 Log),或更改 .AspNet.ApplicationCookie 值以确保它不包含任何会触发防火墙规则的文本。cookie 由 Microsoft.Owin.Security.Cookies 库生成,我不确定是否可以更改它的生成方式。