Назад | Перейти на главную страницу

Настройка WAF + ALB для предотвращения внедрения SQL

Я пытаюсь настроить Amazon ALB (Application Load Balancer, а не «классический» ELB) для использования брандмауэра веб-приложений (WAF) для отклонения запросов https, которые содержат потенциальные полезные нагрузки XSS или SQL Injection.

Я настроил в WAF правило XSS

и правило SQL-инъекции

Когда я перехожу к форме входа в веб-приложение за ALB и отправляю имя пользователя

<script>danger</script>

ALB перехватывает запрос, как ожидалось, и возвращает статус HTTP 403.

Однако, когда я отправляю имя пользователя

Robert'); DROP TABLE students;--

Я получаю сообщение об ошибке от веб-приложения с указанием неверного имени пользователя и пароля, а не ожидаемого HTTP 403.

Почему правило XSS может работать эффективно, в то время как аналогичным образом созданное правило SQL-инъекции не останавливает ввод, что является классическим примером SQL-инъекции? Мне нужно как-то настроить это правило по-другому? Любые известные проблемы с применением WAF к ALB (я знаю, что интеграция очень нова, поэтому я предполагаю, что могут быть некоторые ошибки).