2010-03-10 2 views
4

Я использую Jboss 4.2.3 в качестве сервера приложений. Есть ли способ ограничить размер HTTP-запроса, принятого JBoss? Я хочу ограничить размер, чтобы избежать атак DOS.Ограничение размера запроса HTTP-сообщения на JBoss

Я уже сидел maxHttpHeaderSize и maxPostSize в файле server.xml, но ни один из них не имеет никакого значения.

ответ

0

Tomcat принимает HTTP-запрос в $JBOSS_HOME/server/default/deploy/jbossweb-tomcat55.sar/server.xml, вы можете настроить maxHttpHeaderSize как атрибут тега Connector.

Чтобы иметь контроль в отношении содержания вы бы реализовать Valve или Filter

3

maxPostSize определяет, насколько большой POST может получить, прежде чем Tomcat будет «автоматически» разобрать его, что бы это значит.

Если вы делаете это по соображениям безопасности, вам нужно дважды подумать о том, как вы это делаете. Атака DOS не собирается объявлять свой размер как заголовок HTTP-запроса, она просто отправит данные до тех пор, пока ваш сервер не упадет.

Вы могли проверить Content-Length заголовок запроса и немедленно отклонить его, если ее нет, или слишком большой, но вы рискуете отвергнуть подлинные клиентов, которые не поставить заголовок, который многие вонн» т.

В противном случае вам просто нужно будет прочитать данные запроса, пока он не пересечет порог, а затем отклонит его.

В любом случае, контейнер не может вам помочь.

+1

+1 и атака DDOS не только отправляют большие данные. Это также происходит одновременно с тысячами одновременных запросов. – BalusC