Хм; похож на 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
загрузить и распаковать сами источники.
Для фильтрации аргументов существует гораздо более простой способ, чем использование регулярных выражений для всего 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
Здесь же можно найти все другие параметры.
Я полагаю, вам нужно что-то вроде этого:
<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 не соответствует методу, который вы хотите / разрешаете.