[ aws . waf-regional ]
создание набора соответствий для SQL-инъекций
Описание
Примечание
Это документация по AWS WAF Classic. Для получения дополнительной информации см. AWS WAF Classic в руководстве разработчика.
Создаёт набор соответствий SqlInjectionMatchSet, который вы используете для разрешения, блокирования или подсчёта запросов, содержащих фрагменты SQL-кода в определённой части веб-запросов. AWS WAF ищет последовательности символов, которые, скорее всего, являются вредоносными строками.
Чтобы создать и настроить SqlInjectionMatchSet, выполните следующие действия:
- Используйте GetChangeToken для получения маркера изменения, который вы предоставляете в параметре
ChangeTokenзапросаCreateSqlInjectionMatchSet. - Отправьте запрос
CreateSqlInjectionMatchSet. - Используйте
GetChangeTokenдля получения маркера изменения, который вы предоставляете в параметреChangeTokenзапроса UpdateSqlInjectionMatchSet. - Отправьте запрос UpdateSqlInjectionMatchSet для указания частей веб-запросов, в которых вы хотите разрешить, заблокировать или посчитать вредоносный SQL-код.
Дополнительную информацию о том, как использовать API AWS WAF для разрешения или блокирования HTTP-запросов, см. в руководстве разработчика AWS WAF.
См. также: Документация API AWS
Синтаксис
create-sql-injection-match-set
--name <value>
--change-token <value>
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
[--debug]
[--endpoint-url <value>]
[--no-verify-ssl]
[--no-paginate]
[--output <value>]
[--query <value>]
[--profile <value>]
[--region <value>]
[--version <value>]
[--color <value>]
[--no-sign-request]
[--ca-bundle <value>]
[--cli-read-timeout <value>]
[--cli-connect-timeout <value>]
[--cli-binary-format <value>]
[--no-cli-pager]
[--cli-auto-prompt]
[--no-cli-auto-prompt]
Параметры
--name (строка)
Name изменить после создания SqlInjectionMatchSet.--change-token (строка)
--cli-input-json | --cli-input-yaml (строка) Считывает аргументы из предоставленной строки JSON. Строка JSON следует формату, предоставленному --generate-cli-skeleton. Если другие аргументы предоставляются в командной строке, эти значения переопределят значения, предоставленные JSON. Передача произвольных двоичных значений с помощью JSON-предоставленного значения невозможна, так как строка будет взята буквально. Это не может быть указано вместе с --cli-input-yaml.
--generate-cli-skeleton (строка) Выводит JSON-скелет в стандартный вывод без отправки запроса API. При отсутствии значения или значении input выводит пример JSON-ввода, который можно использовать в качестве аргумента для --cli-input-json. Аналогично, если предоставлено yaml-input, он выведет пример ввода YAML, который можно использовать с --cli-input-yaml. Если предоставлено значение output, он проверяет входные данные команды и возвращает пример выходного JSON для этой команды. Сгенерированный JSON-скелет не является стабильным между версиями AWS CLI, и нет гарантий обратной совместимости в сгенерированном JSON-скелете.
Глобальные параметры
--debug (булево)
Включить отладку логов.
--endpoint-url (строка)
Переопределить URL по умолчанию команды заданным URL.
--no-verify-ssl (булево)
По умолчанию AWS CLI использует SSL при общении с AWS-сервисами. Для каждого SSL-соединения AWS CLI будет проверять SSL-сертификаты. Этот параметр переопределяет поведение проверки SSL-сертификатов по умолчанию.
--no-paginate (булево)
Отключить автоматическую постраничную навигацию. Если автоматическая постраничная навигация отключена, AWS CLI выполнит только один вызов для первой страницы результатов.
--output (строка)
Стиль форматирования для вывода команд.
- json
- text
- table
- yaml
- yaml-stream
--query (строка)
Запрос JMESPath для фильтрации данных ответа.
--profile (строка)
Использовать определённый профиль из файла аутентификации.
--region (строка)
Регион для использования. Переопределяет настройки конфигурации/среды.
--version (строка)
Отобразить версию этого инструмента.
--color (строка)
Включить/выключить вывод цвета.
- on
- off
- auto
--no-sign-request (булево)
Не подписывать запросы. Кредиты не будут загружены, если этот аргумент предоставлен.
--ca-bundle (строка)
Файл сертификата корневого центра сертификации для проверки SSL-сертификатов. Переопределяет настройки конфигурации/среды.
--cli-read-timeout (целое число)
Максимальное время чтения сокета в секундах. Если значение установлено в 0, чтение сокета будет блокирующим и не будет ограничено по времени. Значение по умолчанию — 60 секунд.
--cli-connect-timeout (целое число)
Максимальное время подключения сокета в секундах. Если значение установлено в 0, подключение сокета будет блокирующим и не будет ограничено по времени. Значение по умолчанию — 60 секунд.
--cli-binary-format (строка)
Стиль форматирования для двоичных данных. Формат по умолчанию — base64. Формат base64 ожидает, что двоичные данные будут предоставлены как строка, закодированная в base64. Формат raw-in-base64-out сохраняет совместимость с поведением AWS CLI V1, и двоичные значения должны передаваться буквально. При предоставлении содержимого из файла, отображающего двоичные данные, fileb:// всегда будет обрабатываться как двоичный и будет использовать содержимое файла напрямую независимо от настройки cli-binary-format. При использовании file:// содержимое файла должно быть должным образом отформатировано для настроенного cli-binary-format.
- base64
- raw-in-base64-out
--no-cli-pager (булево)
Отключить вывод страниц командной строки.
--cli-auto-prompt (булево)
Автоматически запрашивать параметры ввода командной строки.
--no-cli-auto-prompt (булево)
Отключить автоматическое запроса параметров ввода командной строки.
Вывод
SqlInjectionMatchSet -> (структура)
Набор правил для соответствия SQL-инъекциям.
SqlInjectionMatchSetId -> (строка)
Уникальный идентификатор набора правил для соответствия SQL-инъекциям. Используйте этот идентификатор для получения информации о наборе правил (см. GetSqlInjectionMatchSet), обновления набора правил (см. UpdateSqlInjectionMatchSet), вставки или удаления правил в набор правил (см. UpdateRule), а также для удаления набора правил из AWS WAF (см. DeleteSqlInjectionMatchSet).
Name -> (строка)
SqlInjectionMatchTuples -> (список)
Указывает части веб-запросов, которые необходимо проверить на фрагменты вредоносного SQL-кода.
(структура)
Примечание
Это документация для AWS WAF Classic. Дополнительную информацию можно найти в руководстве разработчика для AWS WAF Classic.
Указывает часть веб-запроса, которую AWS WAF должен проверить на фрагменты вредоносного SQL-кода, а также имя заголовка, если необходимо проверить заголовок.
FieldToMatch -> (структура)
Указывает, где в веб-запросе искать фрагменты вредоносного SQL-кода.
Type -> (строка)
Часть веб-запроса, которую AWS WAF должен проверить на указанную строку. Проверяемые части запроса включают:
- Заголовок запроса: определенный заголовок запроса, например, значение заголовка `User-Agent` или `X-Forwarded-For`. Если выбран заголовок, укажите имя заголовка в поле `Data`.
- Метод HTTP: HTTP-метод, который указывает тип операции, которую запрос просит выполнить на origin. Amazon CloudFront поддерживает следующие методы: `GET`, `HEAD`, `POST`, `PUT`, `DELETE`, `PATCH`, `OPTIONS`.
- Строка запроса: строка запроса, которая находится после символа `?` в URL (если есть).
- URI: часть веб-запроса, идентифицирующая ресурс, например, `/home`.
- Тело запроса: часть запроса, содержащая дополнительные данные, которые вы хотите отправить на ваш веб-сервер в качестве тела HTTP-запроса, например, данные из формы. Тело запроса сразу следует за заголовками запроса. Обратите внимание, что AWS WAF проверяет только первые `8192` байта тела запроса. Для ограничения запросов на основе размера тела вы можете создать набор ограничений размера. Дополнительную информацию см. в разделе CreateSizeConstraintSet.
- Параметр строки запроса: параметр в строке запроса, который необходимо проверить, например, `UserName` или `SalesRegion`. Максимальная длина параметра строки запроса составляет 30 символов.
- Список параметров строки запроса: аналогично параметру строки запроса, но AWS WAF будет проверять все параметры в строке запроса на указанное значение или регулярное выражение, которое вы указываете в поле `Data`.
Data -> (строка)
Если значение `Type` равно `HEADER`, введите имя заголовка, который AWS WAF должен проверить, например, `User-Agent` или `X-Forwarded-For`. Название заголовка не чувствительно к регистру.
Если значение `Type` равно `PARAMETER`, введите имя параметра, который AWS WAF должен проверить, например, `UserName` или `SalesRegion`. Название параметра не чувствительно к регистру.
Если значение `Type` имеет другое значение, оставьте это поле пустым.
TextTransformation -> (строка)
Преобразования текста устраняют некоторые нестандартные форматы, которые злоумышленники используют в веб-запросах, чтобы обойти AWS WAF. Если вы указываете преобразование, AWS WAF выполняет это преобразование над проверяемым текстом перед проверкой на соответствие.
Можно указать только один тип преобразования.
Используйте этот вариант, если вы опасаетесь, что злоумышленники вводят команды командной строки операционной системы и используют нестандартные форматы для маскировки части или всего кода.
- Удаление следующих символов: " ' ^
- Удаление пробелов перед следующими символами: / (
- Замена следующих символов пробелом: , ;
- Замена нескольких пробелов одним пробелом
- Преобразование заглавных букв (A-Z) в строчные (a-z)
Используйте этот вариант для замены следующих символов символом пробела (десятичное значение 32):
- f, подача формы, десятичное значение 12
- t, табуляция, десятичное значение 9
- n, перевод строки, десятичное значение 10
- r, возврат каретки, десятичное значение 13
- v, вертикальная табуляция, десятичное значение 11
- неразрывный пробел, десятичное значение 160
Этот вариант также заменяет несколько пробелов одним пробелом.
HTML_ENTITY_DECODE
Используйте этот вариант для замены HTML-кодированных символов на символы в исходном виде.
- Замена ... с ...
- Замена ... с неразрывным пробелом, десятичное значение 160
- Замена ... с символом «меньше чем»
- Замена ... с ...
- Замена символов, представленных в шестнадцатеричном формате, ... соответствующими символами
- Замена символов, представленных в десятичном формате, ... соответствующими символами
Используйте этот вариант для преобразования заглавных букв (A-Z) в строчные (a-z).
Используйте этот вариант для декодирования URL-кодированных значений.
Выберите этот вариант, если не нужно выполнять никаких преобразований текста.
ChangeToken -> (строка)