Mod_security не работает без заголовка Content-Type в запросе Http - PullRequest
0 голосов
/ 25 мая 2020

Мне нужно было включить мою apache mod_security, чтобы предотвратить общую c веб-атаку, но в HTTP-запросе, если я не передаю заголовок Content-Type, mod_security не работает.

Например: в HTTP-запросе:

POST / HTTP/1.1
Host: mydomain.or
Content-Length: 604
User-Agent: test
Accept: text/html
Content-type: application/x-www-form-urlencoded

a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados="'><img src=1 onerror=alert(1)>

Таким образом mod_security блокирует мой запрос (что правильно), но если я удалю заголовок Content-Type.

POST / HTTP/1.1
Host: mydomain.or
Content-Length: 604
User-Agent: test
Accept: text/html

a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados=1&a={"ddados":"1"}&dados="'><img src=1 onerror=alert(1)>

Запрос не блокируется.

Как я могу решить эту проблему? Есть ли способ заставить mod_security всегда использовать заголовок Content-Type по умолчанию?

...