Архив проблем безопасности¶
Команда разработчиков Django твердо привержена ответственному сообщению и раскрытию проблем, связанных с безопасностью, как указано в Политике безопасности Django.
В рамках этого обязательства мы поддерживаем следующий исторический список проблем, которые были исправлены и раскрыты. Для каждой проблемы список ниже включает дату, краткое описание, идентификатор CVE, если применимо, список затронутых версий, ссылку на полное раскрытие информации и ссылки на соответствующие исправления.
К этой информации применимы некоторые важные предостережения:
Списки затронутых версий включают только те версии Django, которые на момент раскрытия имели стабильные выпуски с поддержкой безопасности. Это означает, что более старые версии (срок поддержки безопасности которых истек) и версии, которые на момент раскрытия находились в предварительной версии (альфа/бета/RC), могли быть затронуты, но не указаны в списке.
Проект Django время от времени выпускал рекомендации по безопасности, указывая на потенциальные проблемы безопасности, которые могут возникнуть из-за неправильной настройки или других проблем за пределами самого Django. Некоторые из этих рекомендаций получили CVE; в этом случае они перечислены здесь, но, поскольку они не имеют сопутствующих исправлений или выпусков, будут указаны только описание, раскрытие информации и CVE.
Проблемы в процессе безопасности Django¶
Все проблемы безопасности решаются с помощью версий процесса безопасности Django. Они перечислены ниже.
6 февраля 2024 г. — CVE-2024-24680¶
Потенциальный отказ в обслуживании в фильтре шаблонов intcomma. Полное описание
1 ноября 2023 г. — CVE-2023-46695¶
Потенциальная уязвимость отказа в обслуживании в UsernameField в Windows. Полное описание
4 октября 2023 г. — CVE-2023-43665¶
Возможность отказа в обслуживании в django.utils.text.Truncator. Полное описание
4 сентября 2023 г. — CVE-2023-41164¶
Потенциальная уязвимость отказа в обслуживании в django.utils.encoding.uri_to_iri(). Полное описание
3 июля 2023 г. — CVE-2023-36053¶
Потенциальная уязвимость отказа в обслуживании регулярных выражений в EmailValidator/URLValidator. Полное описание
3 мая 2023 г. — CVE-2023-31047¶
Потенциальный обход проверки при загрузке нескольких файлов с использованием одного поля формы. Полное описание
14 февраля 2023 г. — CVE-2023-24580¶
Потенциальная уязвимость типа «отказ в обслуживании» при загрузке файлов. Полное описание
1 февраля 2023 г. — CVE-2023-23969¶
Потенциальный отказ в обслуживании через заголовки Accept-Language. Полное описание
4 октября 2022 г. — CVE-2022-41323¶
Потенциальная уязвимость типа «отказ в обслуживании» в интернационализированных URL-адресах. Полное описание
3 августа 2022 г. — CVE-2022-36359¶
Потенциальная уязвимость, отражающая загрузку файлов в FileResponse. Полное описание
4 июля 2022 г. — CVE-2022-34265¶
Потенциальная SQL-инъекция через аргументы Trunc(kind) и Extract(lookup_name). Полное описание
11 апреля 2022 г. — CVE-2022-28346¶
Потенциальная SQL-инъекция в QuerySet.annotate(), aggregate() и extra(). Полное описание
11 апреля 2022 г. — CVE-2022-28347¶
Потенциальная SQL-инъекция через QuerySet.explain(**options) в PostgreSQL. Полное описание
1 февраля 2022 г. — CVE-2022-22818¶
Возможен XSS через тег шаблона {% debug %}. Полное описание
Затронутые версии¶
1 февраля 2022 г. — CVE-2022-23833¶
Возможность отказа в обслуживании при загрузке файлов. Полное описание
Затронутые версии¶
4 января 2022 г. — CVE-2021-45452¶
Потенциальный обход каталога через Storage.save(). Полное описание
Затронутые версии¶
4 января 2022 г. — CVE-2021-45116¶
Возможное раскрытие информации в фильтре шаблонов dictsort. Полное описание
Затронутые версии¶
4 января 2022 г. — CVE-2021-45115¶
Возможность отказа в обслуживании в UserAttributeSimilarityValidator. Полное описание
Затронутые версии¶
7 декабря 2021 г. — CVE-2021-44420¶
Потенциальный обход восходящего контроля доступа на основе URL-путей. Полное описание
Затронутые версии¶
1 июля 2021 г. — CVE-2021-35042¶
Потенциальная SQL-инъекция через необработанный ввод QuerySet.order_by(). Полное описание
Затронутые версии¶
2 июня 2021 г. — CVE-2021-33203¶
Потенциальный обход каталога через admindocs. Полное описание
Затронутые версии¶
2 июня 2021 г. — CVE-2021-33571¶
Возможны неопределенные атаки SSRF, RFI и LFI, поскольку валидаторы принимают ведущие нули в адресах IPv4. Полное описание
Затронутые версии¶
6 мая 2021 г. — CVE-2021-32052¶
Возможность внедрения заголовка, поскольку URLValidator принимает символы новой строки во входных данных на Python 3.9.5+. Полное описание
Затронутые версии¶
4 мая 2021 г. — CVE-2021-31542¶
Потенциальный обход каталогов через загруженные файлы. Полное описание
Затронутые версии¶
6 апреля 2021 г. — CVE-2021-28658¶
Потенциальный обход каталогов через загруженные файлы. Полное описание
Затронутые версии¶
19 февраля 2021 г. — CVE-2021-23336¶
Отравление веб-кэша через django.utils.http.limited_parse_qsl(). Полное описание
Затронутые версии¶
1 февраля 2021 г. — CVE-2021-3281¶
Потенциальный обход каталога через archive.extract(). Полное описание
Затронутые версии¶
1 сентября 2020 г. - CVE-2020-24584¶
Повышение разрешений в каталогах промежуточного уровня кэша файловой системы на Python 3.7+. Полное описание
Затронутые версии¶
1 сентября 2020 г. - CVE-2020-24583¶
Неправильные разрешения для каталогов промежуточного уровня в Python 3.7+. Полное описание
Затронутые версии¶
3 июня 2020 г. - CVE-2020-13596¶
Возможен XSS через администратора «ForeignKeyRawIdWidget». Полное описание
Затронутые версии¶
3 июня 2020 г. - CVE-2020-13254¶
Возможна утечка данных из-за неправильно сформированных ключей memcached. Полное описание
Затронутые версии¶
4 марта 2020 г. - CVE-2020-9402¶
Потенциальное внедрение SQL через параметр «tolerance» в функции ГИС и агрегаты в Oracle. Полное описание
Затронутые версии¶
3 февраля 2020 г. - CVE-2020-7471¶
Потенциальная SQL-инъекция через StringAgg(delimiter). Полное описание
Затронутые версии¶
18 декабря 2019 г. - CVE-2019-19844¶
Потенциальный взлом учетной записи через форму сброса пароля. Полное описание
Затронутые версии¶
2 декабря 2019 г. - CVE-2019-19118¶
Повышение привилегий в администраторе Django. Полное описание
Затронутые версии¶
1 августа 2019 г. - CVE-2019-14235¶
Потенциальное исчерпание памяти в django.utils.encoding.uri_to_iri(). Полное описание
Затронутые версии¶
1 августа 2019 г. - CVE-2019-14234¶
Возможность внедрения SQL при поиске ключей и индексов для JSONField/HStoreField. Полное описание
Затронутые версии¶
1 августа 2019 г. - CVE-2019-14233¶
Возможность отказа в обслуживании в strip_tags(). Полное описание
Затронутые версии¶
1 августа 2019 г. - CVE-2019-14232¶
Возможность отказа в обслуживании в django.utils.text.Truncator. Полное описание
Затронутые версии¶
1 июля 2019 г. - CVE-2019-12781¶
Неверное обнаружение HTTP при подключении обратного прокси-сервера через HTTPS. Полное описание
Затронутые версии¶
3 июня 2019 г. - CVE-2019-12308¶
XSS через ссылку «Текущий URL», созданную AdminURLFieldWidget. Полное описание
Затронутые версии¶
3 июня 2019 г. - CVE-2019-11358¶
Загрязнение прототипов в комплекте jQuery. Полное описание
Затронутые версии¶
11 февраля 2019 г. - CVE-2019-6975¶
Нехватка памяти в django.utils.numberformat.format(). Полное описание
Затронутые версии¶
Django 2.1 (патч)
Django 2.0 (патч и исправление)
Django 1.11 (патч)
4 января 2019 г. - CVE-2019-3498¶
Возможность подделки контента на странице 404 по умолчанию. Полное описание
Затронутые версии¶
1 октября 2018 г. - CVE-2018-16984¶
Раскрытие хэша пароля пользователям с правами администратора «только для просмотра». Полное описание
Затронутые версии¶
Django 2.1 (патч)
1 августа 2018 г. - CVE-2018-14574¶
Открыть возможность перенаправления в CommonMiddleware. Полное описание
Затронутые версии¶
6 марта 2018 г. - CVE-2018-7537¶
Возможность отказа в обслуживании в фильтрах шаблонов truncatechars_html и truncatewords_html. Полное описание
Затронутые версии¶
6 марта 2018 г. - CVE-2018-7536¶
Возможность отказа в обслуживании в фильтрах шаблонов urlize и urlizetrnc. Полное описание
Затронутые версии¶
1 февраля 2018 г. - CVE-2018-6188¶
Утечка информации в AuthenticationForm. Полное описание
Затронутые версии¶
5 сентября 2017 г. — CVE-2017-12794¶
Возможный XSS в разделе трассировки на странице отладки технических 500. Полное описание
Затронутые версии¶
4 апреля 2017 г. — CVE-2017-7234¶
Открытая уязвимость перенаправления в django.views.static.serve(). Полное описание
Затронутые версии¶
4 апреля 2017 г. - CVE-2017-7233¶
Открытое перенаправление и возможная атака XSS через предоставленные пользователем числовые URL-адреса перенаправления. Полное описание
Затронутые версии¶
1 ноября 2016 г. — CVE-2016-9014¶
Уязвимость перепривязки DNS при DEBUG=True. Полное описание
Затронутые версии¶
1 ноября 2016 г. — CVE-2016-9013¶
Пользователь с жестко заданным паролем, созданным при выполнении тестов в Oracle. Полное описание
Затронутые версии¶
26 сентября 2016 г. - CVE-2016-7401¶
Обход защиты CSRF на сайте с помощью Google Analytics. Полное описание
Затронутые версии¶
18 июля 2016 г. — CVE-2016-6186¶
XSS во всплывающем окне администратора, связанном с добавлением/изменением. Полное описание
Затронутые версии¶
1 марта 2016 г. - CVE-2016-2513¶
Перечисление пользователей через разницу во времени при обновлении коэффициента работы хэшера паролей. Полное описание
Затронутые версии¶
1 марта 2016 г. - CVE-2016-2512¶
Вредоносное перенаправление и возможная атака XSS через предоставленные пользователем URL-адреса перенаправления, содержащие базовую аутентификацию. Полное описание
Затронутые версии¶
1 февраля 2016 г. - CVE-2016-2048¶
Пользователь с разрешением «изменить», но не «добавлять», может создавать объекты для ModelAdmin с помощью save_as=True. Полное описание
Затронутые версии¶
Django 1.9 (патч)
24 ноября 2015 г. - CVE-2015-8213¶
Возможность утечки настроек в фильтре шаблона date. Полное описание
Затронутые версии¶
18 августа 2015 г. — CVE-2015-5963 / CVE-2015-5964¶
Возможность отказа в обслуживании в представлении logout() путем заполнения хранилища сеансов. Полное описание
Затронутые версии¶
8 июля 2015 г. - CVE-2015-5145¶
Возможность отказа в обслуживании при проверке URL. Полное описание
Затронутые версии¶
Django 1.8 (патч)
8 июля 2015 г. - CVE-2015-5144¶
Возможность внедрения заголовка, поскольку валидаторы принимают символы новой строки во входных данных. Полное описание
Затронутые версии¶
8 июля 2015 г. - CVE-2015-5143¶
Возможность отказа в обслуживании путем заполнения хранилища сеансов. Полное описание
Затронутые версии¶
20 мая 2015 г. - CVE-2015-3982¶
Исправлена очистка сеанса в бэкэнде cached_db. Полное описание
Затронутые версии¶
Django 1.8 (патч)
18 марта 2015 г. - CVE-2015-2317¶
Устранена возможная XSS-атака через URL-адреса перенаправления, предоставленные пользователем. Полное описание
Затронутые версии¶
18 марта 2015 г. - CVE-2015-2316¶
Возможность отказа в обслуживании с помощью strip_tags(). Полное описание
Затронутые версии¶
9 марта 2015 г. - CVE-2015-2241¶
XSS-атака через свойства в ModelAdmin.readonly_fields. Полное описание
Затронутые версии¶
13 января 2015 г. - CVE-2015-0222¶
Отказ в обслуживании базы данных с помощью ModelMultipleChoiceField. Полное описание
Затронутые версии¶
13 января 2015 г. - CVE-2015-0221¶
Атака типа «отказ в обслуживании» на django.views.static.serve(). Полное описание
Затронутые версии¶
13 января 2015 г. - CVE-2015-0220¶
Устранена возможная XSS-атака через URL-адреса перенаправления, предоставленные пользователем. Полное описание
Затронутые версии¶
13 января 2015 г. - CVE-2015-0219¶
Подмена заголовка WSGI с помощью объединения подчеркивания/тире. Полное описание
Затронутые версии¶
20 августа 2014 г. - CVE-2014-0483¶
Утечка данных из-за манипуляций со строкой запроса в администраторе. Полное описание
Затронутые версии¶
20 августа 2014 г. - CVE-2014-0482¶
Перехват сеанса RemoteUserMiddleware. Полное описание
Затронутые версии¶
20 августа 2014 г. - CVE-2014-0481¶
Отказ в обслуживании при загрузке файла. Полное описание
Затронутые версии¶
20 августа 2014 г. - CVE-2014-0480¶
reverse() может генерировать URL-адреса, указывающие на другие хосты. Полное описание
Затронутые версии¶
18 мая 2014 г. - CVE-2014-3730¶
Неверно сформированные URL-адреса, введенные пользователем, некорректно проверены. Полное описание
Затронутые версии¶
18 мая 2014 г. - CVE-2014-1418¶
Кешам может быть разрешено хранить и обслуживать личные данные. Полное описание
Затронутые версии¶
21 апреля 2014 г. — CVE-2014-0474¶
Приведение типов MySQL приводит к неожиданным результатам запроса. Полное описание
Затронутые версии¶
21 апреля 2014 г. — CVE-2014-0473¶
Кэширование анонимных страниц может раскрыть токен CSRF. Полное описание
Затронутые версии¶
21 апреля 2014 г. — CVE-2014-0472¶
Неожиданное выполнение кода с использованием функции reverse(). Полное описание
Затронутые версии¶
14 сентября 2013 г. - CVE-2013-1443¶
Отказ в обслуживании через большие пароли. Полное описание
Затронутые версии¶
Django 1.4 (патч и Исправление совместимости с Python)
Django 1.5 (патч)
10 сентября 2013 г. — CVE-2013-4315¶
Обход каталога через тег шаблона ssi. Полное описание
Затронутые версии¶
13 августа 2013 г. - CVE-2013-6044¶
Возможный XSS через непроверенные схемы перенаправления URL-адресов. Полное описание
Затронутые версии¶
13 августа 2013 г. — CVE-2013-4249¶
XSS через администратора, доверяющего значениям URLField. Полное описание
Затронутые версии¶
Django 1.5 (патч)
19 февраля 2013 г. - CVE-2013-0306¶
Отказ в обслуживании через обход набора форм max_num. Полное описание
Затронутые версии¶
19 февраля 2013 г. - CVE-2013-0305¶
Утечка информации через журнал истории администратора. Полное описание
Затронутые версии¶
19 февраля 2013 г. — CVE-2013-1664 / CVE-2013-1665¶
Атаки на основе сущностей против XML-библиотек Python. Полное описание
Затронутые версии¶
19 февраля 2013 г. – нет CVE¶
Дополнительное усиление обработки заголовка Host. Полное описание
Затронутые версии¶
10 декабря 2012 г. — CVE 2 отсутствует.¶
Дополнительное усиление проверки перенаправления. Полное описание
Затронутые версии¶
10 декабря 2012 г. — CVE 1 отсутствует.¶
Дополнительное усиление обработки заголовка Host. Полное описание
Затронутые версии¶
17 октября 2012 г. — CVE-2012-4520¶
Отравление заголовка Host. Полное описание
Затронутые версии¶
30 июля 2012 г. — CVE-2012-3444¶
Отказ в обслуживании через большие файлы изображений. Полное описание
Затронутые версии¶
30 июля 2012 г. — CVE-2012-3443¶
Отказ в обслуживании через сжатые файлы изображений. Полное описание
Затронутые версии¶
30 июля 2012 г. — CVE-2012-3442¶
XSS из-за невозможности проверить схему перенаправления. Полное описание
Затронутые версии¶
9 сентября 2011 г. — CVE-2011-4140¶
Потенциальный CSRF через заголовок Host. Полное описание
Затронутые версии¶
Это уведомление носило исключительно рекомендательный характер, поэтому никаких исправлений не выпускалось.
Джанго 1.2
Джанго 1.3
9 сентября 2011 г. — CVE-2011-4139¶
Отравление кэша заголовков Host. Полное описание
Затронутые версии¶
9 сентября 2011 г. — CVE-2011-4138¶
Утечка информации/выдача произвольных запросов через URLField.verify_exists. Полное описание
Затронутые версии¶
9 сентября 2011 г. — CVE-2011-4137¶
Отказ в обслуживании через URLField.verify_exists. Полное описание
Затронутые версии¶
9 сентября 2011 г. — CVE-2011-4136¶
Манипулирование сеансом при использовании сеанса, поддерживаемого кэшем памяти. Полное описание
Затронутые версии¶
8 февраля 2011 г. — CVE-2011-0698¶
Обход каталога в Windows из-за неправильной обработки разделителя путей. Полное описание
Затронутые версии¶
8 февраля 2011 г. — CVE-2011-0697¶
XSS через несанкционированные имена загруженных файлов. Полное описание
Затронутые версии¶
8 февраля 2011 г. — CVE-2011-0696¶
CSRF через поддельные заголовки HTTP. Полное описание
Затронутые версии¶
22 декабря 2010 г. - CVE-2010-4535¶
Отказ в обслуживании в механизме сброса пароля. Полное описание
Затронутые версии¶
22 декабря 2010 г. — CVE-2010-4534¶
Утечка информации в административном интерфейсе. Полное описание
Затронутые версии¶
8 сентября 2010 г. — CVE-2010-3082¶
XSS через доверие к небезопасному значению cookie. Полное описание
Затронутые версии¶
Django 1.2 (патч)
October 9, 2009 - CVE-2009-3965¶
Отказ в обслуживании из-за патологической производительности регулярных выражений. Полное описание
Затронутые версии¶
28 июля 2009 г. — CVE-2009-2659¶
Обход каталогов в обработчике мультимедиа сервера разработки. Полное описание
Затронутые версии¶
2 сентября 2008 г. — CVE-2008-3909¶
CSRF посредством сохранения данных POST при входе в систему администратора. Полное описание
Затронутые версии¶
14 мая 2008 г. - CVE-2008-2302¶
XSS через перенаправление входа администратора. Полное описание
Затронутые версии¶
26 октября 2007 г. — CVE-2007-5712¶
Отказ в обслуживании через заголовок Accept-Language произвольного размера. Полное описание
Затронутые версии¶
Проблемы, предшествующие процессу безопасности Django¶
Некоторые проблемы безопасности были решены до того, как в Django появился формализованный процесс обеспечения безопасности. Для них на тот момент могли не быть выпущены новые выпуски и не были назначены CVE.
21 января 2007 г. — CVE-2007-0405¶
Видимое «кэширование» аутентифицированного пользователя. Полное описание
Затронутые версии¶
Django 0.95 (патч)
16 августа 2006 г. — CVE-2007-0404¶
Проблема с проверкой имени файла в системе перевода. Полное описание