An issue was discovered in urllib3 before 1.26.5.
An issue was discovered in urllib3 before 1.26.5. When provided with a URL containing many @ characters in the authority component, the authority regular expression exhibits catastrophic backtracking, causing a denial of service if a URL were passed as a parameter or redirected to via an HTTP redirect.
- BDU:2022-00586
- GHSA-q2q7-5pp4-w6pg
- ALSA-2021:4160
- ALSA-2021:4162
- openSUSE-SU-2021:2012-1
- openSUSE-SU-2024:11277-1
- openSUSE-SU-2024:14055-1
- PYSEC-2021-108
- RHSA-2021:3254
- RHSA-2021:3473
- RHSA-2021:4160
- RHSA-2021:4162
- RHSA-2021:4702
- RLSA-2021:4160
- RLSA-2021:4162
- SUSE-RU-2021:2194-1
- SUSE-SU-2021:2012-1
- SUSE-SU-2021:2195-1
- Опубликовано
- 29 июн. 2021 г.
- Обновлено
- 16 июн. 2026 г.
- EPSS
- 3,3 % · 88-й процентиль
- CWE
- CWE-400
Войдите, чтобы следить · Вы получите уведомление, если запись попадёт в KEV, получит эксплойт или обновится.
Инструменты для отчёта
Оценка срочности
31
Наблюдать
Пока низкий приоритет.
- CVSS
- 30 / 40 · 7.5 / 10
- CISA KEV
- 0 / 30 · Нет в списке
- EPSS
- 1 / 30 · 3,3 %
Затронутые системы
| Вендор | Продукт | CPE |
|---|---|---|
| python | urllib3 | cpe:2.3:a:python:urllib3 |
| fedoraproject | fedora | cpe:2.3:o:fedoraproject:fedora |
| oracle | enterprise manager ops center | cpe:2.3:a:oracle:enterprise_manager_ops_center |
| oracle | instantis enterprisetrack | cpe:2.3:a:oracle:instantis_enterprisetrack |
| oracle | zfs storage appliance kit | cpe:2.3:a:oracle:zfs_storage_appliance_kit |
Затронутые версии
Диапазоны версий NVD (для продуктов из каталога). Добавьте продукт в стек с версией, и сопоставление будет по ним.
- fedoraproject fedora33
- fedoraproject fedora34
- oracle enterprise manager ops center12.4.0.0
- oracle instantis enterprisetrack17.1
- oracle instantis enterprisetrack17.2
- oracle instantis enterprisetrack17.3
- oracle zfs storage appliance kit8.8
- python urllib31.25.4 и новее · до 1.26.5
Затронутые пакеты
Данные OSV и GitHub Advisory: экосистема, пакет и диапазон. Сопоставление SBOM использует эту таблицу.
| Экосистема | Пакет | Затронутый диапазон | Исправление |
|---|---|---|---|
| AlmaLinux:8 | python38-asn1crypto | до 1.2.0-3.module_el8.6.0+2778+cd494b30 | 1.2.0-3.module_el8.6.0+2778+cd494b30 |
| AlmaLinux:8 | python38-atomicwrites | до 1.3.0-8.module_el8.6.0+2778+cd494b30 | 1.3.0-8.module_el8.6.0+2778+cd494b30 |
| AlmaLinux:8 | python38-attrs | до 19.3.0-3.module_el8.6.0+2778+cd494b30 | 19.3.0-3.module_el8.6.0+2778+cd494b30 |
| AlmaLinux:8 | python38-babel | до 2.7.0-11.module_el8.6.0+2778+cd494b30 | 2.7.0-11.module_el8.6.0+2778+cd494b30 |
| AlmaLinux:8 | python38-cffi | до 1.13.2-3.module_el8.6.0+2778+cd494b30 | 1.13.2-3.module_el8.6.0+2778+cd494b30 |
| AlmaLinux:8 | python38-chardet | до 3.0.4-19.module_el8.6.0+2778+cd494b30 | 3.0.4-19.module_el8.6.0+2778+cd494b30 |
| AlmaLinux:8 | python38-cryptography | до 2.8-3.module_el8.6.0+2778+cd494b30 | 2.8-3.module_el8.6.0+2778+cd494b30 |
| AlmaLinux:8 | python38-Cython | до 0.29.14-4.module_el8.6.0+2778+cd494b30 | 0.29.14-4.module_el8.6.0+2778+cd494b30 |
| AlmaLinux:8 | python38-idna | до 2.8-6.module_el8.6.0+2778+cd494b30 | 2.8-6.module_el8.6.0+2778+cd494b30 |
| AlmaLinux:8 | python38-jinja2 | до 2.10.3-5.module_el8.6.0+2778+cd494b30 | 2.10.3-5.module_el8.6.0+2778+cd494b30 |
| AlmaLinux:8 | python38-markupsafe | до 1.1.1-6.module_el8.6.0+2778+cd494b30 | 1.1.1-6.module_el8.6.0+2778+cd494b30 |
| AlmaLinux:8 | python38-mod_wsgi | до 4.6.8-3.module_el8.6.0+2778+cd494b30 | 4.6.8-3.module_el8.6.0+2778+cd494b30 |
| AlmaLinux:8 | python38-more-itertools | до 7.2.0-5.module_el8.6.0+2778+cd494b30 | 7.2.0-5.module_el8.6.0+2778+cd494b30 |
| AlmaLinux:8 | python38-numpy | до 1.17.3-6.module_el8.6.0+2778+cd494b30 | 1.17.3-6.module_el8.6.0+2778+cd494b30 |
| AlmaLinux:8 | python38-numpy-doc | до 1.17.3-6.module_el8.6.0+2778+cd494b30 | 1.17.3-6.module_el8.6.0+2778+cd494b30 |
| AlmaLinux:8 | python38-numpy-f2py | до 1.17.3-6.module_el8.6.0+2778+cd494b30 | 1.17.3-6.module_el8.6.0+2778+cd494b30 |
| AlmaLinux:8 | python38-packaging | до 19.2-3.module_el8.6.0+2778+cd494b30 | 19.2-3.module_el8.6.0+2778+cd494b30 |
| AlmaLinux:8 | python38-pluggy | до 0.13.0-3.module_el8.6.0+2778+cd494b30 | 0.13.0-3.module_el8.6.0+2778+cd494b30 |
| AlmaLinux:8 | python38-ply | до 3.11-10.module_el8.6.0+2778+cd494b30 | 3.11-10.module_el8.6.0+2778+cd494b30 |
| AlmaLinux:8 | python38-psutil | до 5.6.4-4.module_el8.6.0+2778+cd494b30 | 5.6.4-4.module_el8.6.0+2778+cd494b30 |
| AlmaLinux:8 | python38-psycopg2 | до 2.8.4-4.module_el8.6.0+2778+cd494b30 | 2.8.4-4.module_el8.6.0+2778+cd494b30 |
| AlmaLinux:8 | python38-psycopg2-doc | до 2.8.4-4.module_el8.6.0+2778+cd494b30 | 2.8.4-4.module_el8.6.0+2778+cd494b30 |
| AlmaLinux:8 | python38-psycopg2-tests | до 2.8.4-4.module_el8.6.0+2778+cd494b30 | 2.8.4-4.module_el8.6.0+2778+cd494b30 |
| AlmaLinux:8 | python38-py | до 1.8.0-8.module_el8.6.0+2778+cd494b30 | 1.8.0-8.module_el8.6.0+2778+cd494b30 |
+96
Тот же продукт
python: все записиДругие записи с наивысшей оценкой для того же основного продукта.
- CVE-2018-20060urllib3 before version 1.23 does not remove the Authorization HTTP header when following a cross-origin redirect (i.e., a redirect that diff40В плане
- CVE-2026-21441urllib3 vulnerable to decompression-bomb safeguard bypass when following HTTP redirects (streaming API)36Наблюдать
- CVE-2026-44432urllib3: Decompression-bomb safeguards bypassed in parts of the streaming API35Наблюдать
- CVE-2025-66471urllib3 Streaming API improperly handles highly compressed data35Наблюдать
- CVE-2025-66418urllib3 allows an unbounded number of links in the decompression chain35Наблюдать
- CVE-2026-44431urllib3: Sensitive headers forwarded across origins in proxied low-level redirects32Наблюдать
Исправление
На какую версию обновиться
Версии с исправлением по данным вендора, реестров пакетов и Microsoft. Перед обновлением сверьтесь с бюллетенем вендора.
| Продукт / пакет | Исправленная версия | Источник |
|---|---|---|
| almalinux:python39-attrs | 20.3.0-2.module_el8.6.0+2780+a40f65e1 · AlmaLinux:8 | Реестр пакетов (OSV) |
| almalinux:python39-cffi | 1.14.3-2.module_el8.6.0+2780+a40f65e1 · AlmaLinux:8 | Реестр пакетов (OSV) |
| almalinux:python39-chardet | 3.0.4-19.module_el8.6.0+2780+a40f65e1 · AlmaLinux:8 | Реестр пакетов (OSV) |
| almalinux:python39-cryptography | 3.3.1-2.module_el8.6.0+2780+a40f65e1 · AlmaLinux:8 | Реестр пакетов (OSV) |
| almalinux:python39-Cython | 0.29.21-5.module_el8.6.0+2780+a40f65e1 · AlmaLinux:8 | Реестр пакетов (OSV) |
| almalinux:python39-idna | 2.10-3.module_el8.6.0+2780+a40f65e1 · AlmaLinux:8 | Реестр пакетов (OSV) |
| almalinux:python39-iniconfig | 1.1.1-2.module_el8.6.0+2780+a40f65e1 · AlmaLinux:8 | Реестр пакетов (OSV) |
| almalinux:python39-mod_wsgi | 4.7.1-4.module_el8.6.0+2780+a40f65e1 · AlmaLinux:8 | Реестр пакетов (OSV) |
| almalinux:python39-more-itertools | 8.5.0-2.module_el8.6.0+2780+a40f65e1 · AlmaLinux:8 | Реестр пакетов (OSV) |
| almalinux:python39-numpy | 1.19.4-3.module_el8.6.0+2780+a40f65e1 · AlmaLinux:8 | Реестр пакетов (OSV) |
| almalinux:python39-numpy-doc | 1.19.4-3.module_el8.6.0+2780+a40f65e1 · AlmaLinux:8 | Реестр пакетов (OSV) |
| almalinux:python39-PyMySQL | 0.10.1-2.module_el8.6.0+2780+a40f65e1 · AlmaLinux:8 | Реестр пакетов (OSV) |
| debian:python-urllib3 | 1.26.5-1~exp1 · Debian:12 | Реестр пакетов (OSV) |
| opensuse:python-urllib3 | 1.25.10-4.3.1 · openSUSE:Leap 15.3 | Реестр пакетов (OSV) |
| PyPI:urllib3 | 1.26.5 | Реестр пакетов (OSV) |
| red hat:rh-python38-babel | 0:2.7.0-12.el7 · Red Hat:rhel_software_collections:3::el7 | Реестр пакетов (OSV) |
| red hat:rh-python38-python | 0:3.8.11-2.el7 · Red Hat:rhel_software_collections:3::el7 | Реестр пакетов (OSV) |
| red hat:rh-python38-python-babel | 0:2.7.0-12.el7 · Red Hat:rhel_software_collections:3::el7 | Реестр пакетов (OSV) |
| red hat:rh-python38-python-cryptography | 0:2.8-5.el7 · Red Hat:rhel_software_collections:3::el7 | Реестр пакетов (OSV) |
| red hat:rh-python38-python-cryptography-debuginfo | 0:2.8-5.el7 · Red Hat:rhel_software_collections:3::el7 | Реестр пакетов (OSV) |
| red hat:rh-python38-python-debug | 0:3.8.11-2.el7 · Red Hat:rhel_software_collections:3::el7 | Реестр пакетов (OSV) |
| red hat:rh-python38-python-debuginfo | 0:3.8.11-2.el7 · Red Hat:rhel_software_collections:3::el7 | Реестр пакетов (OSV) |
| red hat:rh-python38-python-devel | 0:3.8.11-2.el7 · Red Hat:rhel_software_collections:3::el7 | Реестр пакетов (OSV) |
| red hat:rh-python38-python-idle | 0:3.8.11-2.el7 · Red Hat:rhel_software_collections:3::el7 | Реестр пакетов (OSV) |
| red hat:rh-python38-python-jinja2 | 0:2.10.3-6.el7 · Red Hat:rhel_software_collections:3::el7 | Реестр пакетов (OSV) |
| red hat:rh-python38-python-libs | 0:3.8.11-2.el7 · Red Hat:rhel_software_collections:3::el7 | Реестр пакетов (OSV) |
| red hat:rh-python38-python-lxml | 0:4.4.1-7.el7 · Red Hat:rhel_software_collections:3::el7 | Реестр пакетов (OSV) |
| rocky linux:Cython | 0:0.29.21-5.module+el8.4.0+574+843c4898 · Rocky Linux:8 | Реестр пакетов (OSV) |
| rocky linux:mod_wsgi | 0:4.7.1-4.module+el8.4.0+574+843c4898 · Rocky Linux:8 | Реестр пакетов (OSV) |
| rocky linux:numpy | 0:1.19.4-3.module+el8.5.0+673+10283621 · Rocky Linux:8 | Реестр пакетов (OSV) |
+21
Статус эксплойта
Публичный эксплойт неизвестен
Публичный эксплойт пока не обнаружен. Это не значит, что вы в безопасности, лишь что порог чуть выше.
Контекст для исследователя
Для пентестеров и исследователей: профиль атаки, расхождение оценок, хронология, коммиты исправлений, авторы, кандидаты в варианты и цепочки, охват bug bounty. Всё выводится из имеющихся данных; без кода эксплойтов.
Хронология
От публикации до сегодня: proof of concept, модуль Metasploit, CISA KEV и запись об исправлении. Даты — как сообщают источники.
Кроме публикации датированных событий нет.
Ежедневная оценка FIRST EPSS; записываются только изменения от 0,01 (ступенчатый график).
Ссылки на патчи и коммиты
Коммиты, PR и diff среди источников. Отправная точка для patch-diff и поиска вариантов; это исправления, не эксплойты.
Авторы
Все исследователиНашедшие, сообщившие и аналитики, названные в записи CNA. Нажмите имя, чтобы увидеть другие записи исследователя.
В записи CNA нет авторов.
Кандидаты в варианты
Тот же продукт, тот же класс уязвимости, в пределах 18 месяцев. Если патч не закрыл первопричину, родственная ошибка здесь.
Ночной расчёт связей ничего не нашёл.
Кандидаты в цепочки
Обход аутентификации и уязвимость, требующая привилегий, в одном продукте и близко по времени: вместе они могут дать путь без аутентификации.
—
Охват bug bounty
Известной публичной программы нет.
Источник: bounty-targets-data (публичные списки HackerOne, Bugcrowd, Intigriti, YesWeHack).
Технические детали
Условия атаки
- Может быть вызвана любым, у кого есть доступ через интернет.
- Учётная запись или пароль не требуются.
- Действия пользователя не требуются.
- Особые условия не требуются; воспроизводится стабильно.
В случае успеха
- Конфиденциальность
- нет
- Целостность
- нет
- Доступность
- высокое · работа сервиса может быть нарушена
- Вектор атаки
- Сеть
- Сложность атаки
- Низкая
- Требуемые привилегии
- Не требуются
- Взаимодействие с пользователем
- Не требуется
- Область действия
- Не изменяется
- Влияние на конфиденциальность
- Нет
- Влияние на целостность
- Нет
- Влияние на доступность
- Высокое
Класс уязвимости (CWE)
CWE-400 · Uncontrolled Resource ConsumptionВектор CVSS
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
nvd-primary
Первопричина
Код, разбирающий вложенные структуры, не ограничивает глубину или размер. Небольшие входные данные могут привести к несоразмерной вычислительной нагрузке.
Ошибка в коде
Весь класс CWE-400Показательный пример этого класса уязвимостей. Это не исходный код вендора; показан ошибочный шаблон и его исправление.
Уязвимый код
function expand(node) { return node.children.map(expand);}Исправленный код
const MAX_DEPTH = 32;function expand(node, depth = 0) { if (depth > MAX_DEPTH) throw new Error("слишком глубоко"); return node.children.map((c) => expand(c, depth + 1));}Контекст атаки
Шаблоны атак MITRE CAPEC и техники ATT&CK для этого класса уязвимости (CWE). Отправная точка для правил обнаружения и threat hunting.
Анализ Noroxi
Анализа Noroxi для этой записи пока нет
Мы не пишем анализ вручную для всех 385 000+ уязвимостей; это было бы нечестно. Для значимых уязвимостей с реальным влиянием наша команда описывает механизм, обнаружение и устранение.
Мы используем этот продукт, нужна помощьЖурнал изменений
- Исправление✗ → ✓
Для отслеживаемых записей эти изменения приходят и как уведомления. →
Источники
- github.com/advisories/GHSA-q2q7-5pp4-w6pg
- github.com/urllib3/urllib3/commit/2d4a3fee6de2fa45eb82169361918f759269b4ec
- lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/6SCV7ZNAHS3E6PBFLJGENCDRDRWRZZ6W/
- lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/FMUGWEAUYGGHTPPXT6YBD53WYXQGVV73/
- security.gentoo.org/glsa/202107-36
- www.oracle.com/security-alerts/cpuoct2021.html
Рекомендации вендоров и официальные записи. Ссылки на эксплойты/PoC намеренно исключены.