Apache2 mod_security простое значение по умолчанию отклоняет правила для определенного каталога

Хм; похож на backports.org, не идет более новый, чем 1.3.1 прямо сейчас.

Учитывая, что, самый безопасный подход должен создать из исходного пакета sid (таким образом, у Вас все еще будет debian-упакованный двоичный файл, всего один Вы создали себя); см. http://www.debian.org/doc/manuals/apt-howto/ch-sourcehandling.en.html для быстрой краткой информации

Если Вы добавили sid исходный репозиторий к своему исходному списку, Вы могли бы также рассмотреть использование apt-get build-dep устанавливать зависимости времени изготовления, и apt-get source загрузить и распаковать сами источники.

0
задан 21 August 2011 в 17:12
2 ответа

Для фильтрации аргументов существует гораздо более простой способ, чем использование регулярных выражений для всего uri:

<Location /web_app>
  SecFilterSelective ARG_NAMES "!^(id|ver|v)$"
  SecFilterSelective ARG_ver   "!^1$"
  SecFilterSelective ARG_id    "!^[a-f\d]{16,16}"
  SecFilterSelective ARG_v     "!^[-\.a-z\d\ ]{1,20}"

  # Here the same for the request type
  SecFilterSelective REQUEST_METHOD "!^(GET|HEAD|POST)$"
</Location>

Будет соответствовать любому аргументу, НЕ в списке только в разделе / web_app .

Вы можете найти хорошие примеры в документации по mod_security: http://www.modsecurity.org/documentation/modsecurity-apache/1.9.3/html-multipage/09-examples.html

Здесь же можно найти все другие параметры.

1
ответ дан 4 December 2019 в 14:40

Я полагаю, вам нужно что-то вроде этого:

<LocationMatch "^/web_app/">
        SecRule REQUEST_URI "!(:?get\.php\?ver=1&id=([a-f\d]){16,16}&v=([-.a-z\d\ ]){1,20})" "id:123,phase:2, deny, status:406"
</LocationMatch>

Для REQUEST_METHOD вы можете добавить одно дополнительное правило для блокировки, если REQUEST_METHOD не соответствует методу, который вы хотите / разрешаете.

1
ответ дан 4 December 2019 в 14:40

Теги

Похожие вопросы