Local symlink attack in Unbound and NSD
NLnet Labs Unbound, up to and including version 1.12.0, and NLnet Labs NSD, up to and including version 4.3.3, contain a local vulnerability that would allow for a local symlink attack. When writing the PID file, Unbound and NSD create the file if it is not there, or open an existing file for writing. In case the file was already present, they would follow symlinks if the file happened to be a symlink instead of a regular file. An additional chown of the file would then take place after it was written, making the user Unbound/NSD is supposed to run as the new owner of the file. If an attacker has local access to the user Unbound/NSD runs as, she could create a symlink in place of the PID file pointing to a file that she would like to erase. If then Unbound/NSD is killed and the PID file is not cleared, upon restarting with root privileges, Unbound/NSD will rewrite any file pointed at by the symlink. This is a local vulnerability that could create a Denial of Service of the system Unbound/NSD is running on. It requires an attacker having access to the limited permission user Unbound/NSD runs as and point through the symlink to a critical file on the system.
- Опубликовано
- 7 дек. 2020 г.
- Обновлено
- 16 июн. 2026 г.
- EPSS
- 0,5 % · 40-й процентиль
- CWE
- CWE-59
Войдите, чтобы следить · Вы получите уведомление, если запись попадёт в KEV, получит эксплойт или обновится.
Инструменты для отчёта
Оценка срочности
22
Наблюдать
Пока низкий приоритет.
- CVSS
- 22 / 40 · 5.5 / 10
- CISA KEV
- 0 / 30 · Нет в списке
- EPSS
- 0 / 30 · 0,5 %
Анализ Noroxi
Анализа Noroxi для этой записи пока нет
Мы не пишем анализ вручную для сотен тысяч уязвимостей в базе; это было бы нечестно. Для значимых уязвимостей с реальным влиянием наша команда описывает механизм, обнаружение и устранение.
Мы используем этот продукт, нужна помощьЗатронутые системы
| Вендор | Продукт | CPE |
|---|---|---|
| nlnetlabs | name server daemon | cpe:2.3:a:nlnetlabs:name_server_daemon |
| nlnetlabs | unbound | cpe:2.3:a:nlnetlabs:unbound |
| debian | debian linux | cpe:2.3:o:debian:debian_linux |
Затронутые версии
Диапазоны версий NVD (для продуктов из каталога). Добавьте продукт в стек с версией, и сопоставление будет по ним.
- debian debian linux9.0
- nlnetlabs name server daemonдо 4.3.4
- nlnetlabs unboundдо 1.13.0
Версии, заявленные вендором
Диапазоны затронутых версий, заявленные назначающей организацией (NLnet Labs). Не зависят от анализа CPE в NVD и обычно опережают его.
NLnet Labs NSD
- <= 4.3.3затронута
NLnet Labs Unbound
- <= 1.12.0затронута
Затронутые пакеты
Данные OSV и GitHub Advisory: экосистема, пакет и диапазон. Сопоставление SBOM использует эту таблицу.
| Экосистема | Пакет | Затронутый диапазон | Исправление |
|---|---|---|---|
| Alpine:v3.12 | nsd | до 4.3.4-r0 | 4.3.4-r0 |
| Debian:10 | unbound | до 1.9.0-2+deb10u3 | 1.9.0-2+deb10u3 |
| Debian:12 | nsd | до 4.3.4-1 | 4.3.4-1 |
| Debian:12 | unbound | до 1.13.0-1 | 1.13.0-1 |
| Debian:9 | unbound1.9 | до 1.9.0-2+deb10u2~deb9u1 | 1.9.0-2+deb10u2~deb9u1 |
| openSUSE:Leap 15.3 | unbound | до 1.6.8-10.6.1 | 1.6.8-10.6.1 |
| openSUSE:Tumbleweed | nsd | до 4.3.7-1.2 | 4.3.7-1.2 |
| openSUSE:Tumbleweed | sslh | до 2.2.3-1.1 | 2.2.3-1.1 |
| openSUSE:Tumbleweed | unbound | до 1.13.2-1.2 | 1.13.2-1.2 |
| Red Hat:enterprise_linux:8::appstream | python3-unbound | до 0:1.7.3-15.el8 | 0:1.7.3-15.el8 |
| Red Hat:enterprise_linux:8::appstream | python3-unbound-debuginfo | до 0:1.7.3-15.el8 | 0:1.7.3-15.el8 |
| Red Hat:enterprise_linux:8::appstream | unbound | до 0:1.7.3-15.el8 | 0:1.7.3-15.el8 |
| Red Hat:enterprise_linux:8::appstream | unbound-debuginfo | до 0:1.7.3-15.el8 | 0:1.7.3-15.el8 |
| Red Hat:enterprise_linux:8::appstream | unbound-debugsource | до 0:1.7.3-15.el8 | 0:1.7.3-15.el8 |
| Red Hat:enterprise_linux:8::appstream | unbound-devel | до 0:1.7.3-15.el8 | 0:1.7.3-15.el8 |
| Red Hat:enterprise_linux:8::appstream | unbound-libs | до 0:1.7.3-15.el8 | 0:1.7.3-15.el8 |
| Red Hat:enterprise_linux:8::appstream | unbound-libs-debuginfo | до 0:1.7.3-15.el8 | 0:1.7.3-15.el8 |
| Red Hat:rhel_eus:8.2::appstream | python3-unbound | до 0:1.7.3-12.el8_2 | 0:1.7.3-12.el8_2 |
| Red Hat:rhel_eus:8.2::appstream | python3-unbound-debuginfo | до 0:1.7.3-12.el8_2 | 0:1.7.3-12.el8_2 |
| Red Hat:rhel_eus:8.2::appstream | unbound | до 0:1.7.3-12.el8_2 | 0:1.7.3-12.el8_2 |
| Red Hat:rhel_eus:8.2::appstream | unbound-debuginfo | до 0:1.7.3-12.el8_2 | 0:1.7.3-12.el8_2 |
| Red Hat:rhel_eus:8.2::appstream | unbound-debugsource | до 0:1.7.3-12.el8_2 | 0:1.7.3-12.el8_2 |
| Red Hat:rhel_eus:8.2::appstream | unbound-devel | до 0:1.7.3-12.el8_2 | 0:1.7.3-12.el8_2 |
| Red Hat:rhel_eus:8.2::appstream | unbound-libs | до 0:1.7.3-12.el8_2 | 0:1.7.3-12.el8_2 |
+6
Тот же продукт
nlnetlabs: все записиДругие записи с наивысшей оценкой для того же основного продукта.
- CVE-2019-13207nsd-checkzone in NLnet Labs NSD 4.2.0 has a Stack-based Buffer Overflow in the dname_concatenate() function in dname.c.40В плане
Исправление
На какую версию обновиться
Версии с исправлением по данным вендора, реестров пакетов и Microsoft. Перед обновлением сверьтесь с бюллетенем вендора.
| Продукт / пакет | Исправленная версия | Источник |
|---|---|---|
| alpine:nsd | 4.3.4-r0 · Alpine:v3.12 | Реестр пакетов (OSV) |
| debian:nsd | 4.3.4-1 · Debian:12 | Реестр пакетов (OSV) |
| debian:unbound | 1.13.0-1 · Debian:12 | Реестр пакетов (OSV) |
| debian:unbound1.9 | 1.9.0-2+deb10u2~deb9u1 · Debian:9 | Реестр пакетов (OSV) |
| opensuse:nsd | 4.3.4-bp152.2.3.1 · openSUSE:Leap 15.1 | Реестр пакетов (OSV) |
| opensuse:sslh | 2.2.3-1.1 · openSUSE:Tumbleweed | Реестр пакетов (OSV) |
| opensuse:unbound | 1.6.8-10.6.1 · openSUSE:Leap 15.3 | Реестр пакетов (OSV) |
| red hat:python3-unbound | 0:1.7.3-15.el8 · Red Hat:enterprise_linux:8::appstream | Реестр пакетов (OSV) |
| red hat:python3-unbound-debuginfo | 0:1.7.3-15.el8 · Red Hat:enterprise_linux:8::appstream | Реестр пакетов (OSV) |
| red hat:unbound | 0:1.7.3-15.el8 · Red Hat:enterprise_linux:8::appstream | Реестр пакетов (OSV) |
| red hat:unbound-debuginfo | 0:1.7.3-15.el8 · Red Hat:enterprise_linux:8::appstream | Реестр пакетов (OSV) |
| red hat:unbound-debugsource | 0:1.7.3-15.el8 · Red Hat:enterprise_linux:8::appstream | Реестр пакетов (OSV) |
| red hat:unbound-devel | 0:1.7.3-15.el8 · Red Hat:enterprise_linux:8::appstream | Реестр пакетов (OSV) |
| red hat:unbound-libs | 0:1.7.3-15.el8 · Red Hat:enterprise_linux:8::appstream | Реестр пакетов (OSV) |
| red hat:unbound-libs-debuginfo | 0:1.7.3-15.el8 · Red Hat:enterprise_linux:8::appstream | Реестр пакетов (OSV) |
| rocky linux:unbound | 0:1.7.3-15.el8 · Rocky Linux:8 | Реестр пакетов (OSV) |
| suse:nsd | 4.3.4-bp152.2.3.1 · SUSE:Package Hub 12 | Реестр пакетов (OSV) |
| suse:unbound | 1.6.8-10.6.1 · SUSE:Linux Enterprise Module for Basesystem 15 SP3 | Реестр пакетов (OSV) |
Статус эксплойта
Публичный эксплойт неизвестен
Публичный эксплойт пока не обнаружен. Это не значит, что вы в безопасности, лишь что порог чуть выше.
Контекст для исследователя
Для пентестеров и исследователей: профиль атаки, расхождение оценок, хронология, коммиты исправлений, авторы, кандидаты в варианты и цепочки, охват bug bounty. Всё выводится из имеющихся данных; без кода эксплойтов.
Хронология
От публикации до сегодня: proof of concept, модуль Metasploit, CISA KEV и запись об исправлении. Даты — как сообщают источники.
Кроме публикации датированных событий нет.
Ежедневная оценка FIRST EPSS; записываются только изменения от 0,01 (ступенчатый график).
Ссылки на патчи и коммиты
Коммиты, PR и diff среди источников. Отправная точка для patch-diff и поиска вариантов; это исправления, не эксплойты.
Среди источников нет ссылок на коммит или PR.
Авторы
Все исследователиНашедшие, сообщившие и аналитики, названные в записи CNA. Нажмите имя, чтобы увидеть другие записи исследователя.
Кандидаты в варианты
Тот же продукт, тот же класс уязвимости, в пределах 18 месяцев. Если патч не закрыл первопричину, родственная ошибка здесь.
Ночной расчёт связей ничего не нашёл.
Кандидаты в цепочки
Обход аутентификации и уязвимость, требующая привилегий, в одном продукте и близко по времени: вместе они могут дать путь без аутентификации.
—
Охват bug bounty
Известной публичной программы нет.
Источник: bounty-targets-data (публичные списки HackerOne, Bugcrowd, Intigriti, YesWeHack).
Национальное уведомление (Управление кибербезопасности Турции / USOM)
Официальные уведомления, ссылающиеся на эту запись; рекомендации — на странице ведомства.
- TR-22-0167 · 23 февр. 2022 г.(RedHat Güvenlik Güncellemesi)
Технические детали
Условия атаки
- Может быть вызвана пользователем с локальным доступом к системе.
- Достаточно учётной записи с низкими привилегиями.
- Действия пользователя не требуются.
- Особые условия не требуются; воспроизводится стабильно.
В случае успеха
- Конфиденциальность
- нет
- Целостность
- нет
- Доступность
- высокое · работа сервиса может быть нарушена
- Вектор атаки
- Локальный
- Сложность атаки
- Низкая
- Требуемые привилегии
- Низкие
- Взаимодействие с пользователем
- Не требуется
- Область действия
- Не изменяется
- Влияние на конфиденциальность
- Нет
- Влияние на целостность
- Нет
- Влияние на доступность
- Высокое
Класс уязвимости (CWE)
CWE-59 · Improper Link Resolution Before File Access ('Link Following')Вектор CVSS
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
nvd-primary
Контекст атаки
Шаблоны атак MITRE CAPEC и техники ATT&CK для этого класса уязвимости (CWE). Отправная точка для правил обнаружения и threat hunting.
Шаблоны атак (CAPEC)
Техники ATT&CK
- Obfuscated Files or Information: HTML SmugglingT1027.006
- Obfuscated Files or Information: Embedded PayloadsT1027.009
- Boot or Logon Autostart Execution:Shortcut ModificationT1547.009
- Hide Artifacts: Resource ForkingT1564.009
- Hijack Execution Flow: Executable Installer File Permissions WeaknessT1574.005
- Hijack Execution Flow: Services File Permissions WeaknessT1574.010
Журнал изменений
- Исправление✗ → ✓
Для отслеживаемых записей эти изменения приходят и как уведомления. →
Источники
- lists.debian.org/debian-lts-announce/2021/02/msg00017.html
- lists.debian.org/debian-lts-announce/2023/03/msg00024.html
- security.gentoo.org/glsa/202101-38
- www.nlnetlabs.nl/downloads/nsd/CVE-2020-28935.txt
- www.nlnetlabs.nl/downloads/unbound/CVE-2020-28935.txt
Рекомендации вендоров и официальные записи. Ссылки на эксплойты/PoC намеренно исключены.