配置WAF + ALB以防止SQL注入

配置WAF + ALB以防止SQL注入

我正在尝试配置 Amazon ALB(应用程序负载均衡器,而不是“经典”ELB)以使用 Web 应用程序防火墙(WAF)拒绝包含潜在 XSS 或 SQL 注入负载的 https 请求。

我在 WAF 中配置了 XSS 规则

  • 正文包含跨站点脚本威胁。
  • 查询字符串解码为 URL 后包含跨站点脚本威胁。

以及 SQL 注入规则

  • 正文包含 SQL 注入威胁。
  • 查询字符串解码为 URL 后包含 SQL 注入威胁。

当我浏览到 ALB 后面的 Web 应用程序的登录表单并提交用户名时

<script>danger</script>

ALB 按预期拦截请求并返回 HTTP 403 状态。

但是,当我提交用户名时

Robert'); DROP TABLE students;--

我从 Web 应用程序收到一个错误,指示用户名和密码无效,而不是预期的 HTTP 403。

为什么 XSS 规则可以有效工作,而类似创建的 SQL 注入规则却无法阻止输入(这是 SQL 注入的典型示例)?我是否需要以某种方式设置该规则?将 WAF 应用于 ALB 是否存在任何已知问题(我知道集成非常新,所以我猜想可能存在一些错误)。

相关内容