2013-03-22 4 views
2

Команда Django считает, что отравление заголовка хоста (CVE-2011-4139 и CVE-2012-4520) является проблемой безопасности, которая должна быть решена на уровне структуры. Например, пирамида (т. Е. Ее базовая низкоуровневая обертка-webob) не рассматривает это как проблему.Возможно ли в этом случае отравление заголовка заголовка?

На производство & развития машин у меня есть Nginx, который, кажется, проходит правильно SERVER_NAME даже если Host заголовок содержит полный мусор, и реагирует с 444 No response если нет соответствия server_name.

Вопрос: должен ли я беспокоиться о отравлении заголовка заголовка Host в таком случае, если я использую SERVER_NAME для создания абсолютных URL-адресов?

ответ

2

Если вы используете nginx для дезинфекции полей HTTP_HOST и SERVER_NAME, вы поступаете правильно, и вам не нужно беспокоиться о том, что заголовок Host заголовок.

Как и Django, Pyramid рассматривает большую часть этой задачи среды WSGI-хоста. И nginx делает отличную, застывшую в битве работу по дезинфекции информации запроса HTTP.

+0

Я бы сказал: «Джанго считает это своей задачей в некоторой степени» :) – ASKSBADQUESTIONS

+0

@ASKSBADQUESTIONS: см. [CVE-2012-4520 advisory] (https://www.djangoproject.com/weblog/ 2012/oct/17/security /): * Некоторые атаки против этого превышают способность управлять Django и требуют правильной настройки веб-сервера *. –

+0

Вот почему это не должно быть проблемой Django. Это плохая конфигурация, а не фреймворк (возможно, разработчики Django имеют собственное мнение об этом, кто знает). Постскриптум Я упомянул о том, что CVE в вопросе;) Кроме того, я видел (где-то, не помню, где) плохие исправления безопасности других проектов, которые делали код a) трудно читать и изменять b) небезопасно. Как вы думаете? – ASKSBADQUESTIONS