В пакета Dnsmasq, който обединява кеширащ DNS резолвер, DHCP сървър, услуга за анонсиране на маршрути IPv6 и система за стартиране по мрежата, са открити 6 уязвимости, които позволяват изпълнение на код с root права, пренасочване на домейн към друг IP, разглеждане на съдържанието на паметта на процеса и предизвикване на аварийно спиране на услугата. Проблемите са отстранени в изданието dnsmasq 2.92rel2. Корекциите са достъпни и под формата на пачове.
Открити проблеми:
- CVE-2026-4892 — препълване на буфер в реализацията на DHCPv6, което позволява на атакуващ, който има достъп до локалната мрежа, да изпълни код с root права чрез изпращане на специално форматиран DHCPv6 пакет. Препълването е причинено от факта, че при запис на DHCPv6 CLID в буфера не е взето предвид, че в пакета данните се запазват в шестнадесетичен формат, където се използват три байта „%xx“ за всеки действителен байт CLID (например, запазването на 1000-байтов CLID ще доведе до записване на 3000 байта).
- CVE-2026-2291 — препълване на буфер в функцията extract_name(), което позволява на атакуващите да вмъкнат фиктивни записи в DNS кеша и да постигнат пренасочване домейн към друг IP адрес. Препълването е възникнало, защото е заделен буфер без да се вземе предвид обработката на определени символи в вътрешното представяне на домейнното име в dnsmasq.
- CVE-2026-4893 — изтичане на информация, позволяваща заобикаляне на проверката чрез изпращане на специално оформен DNS пакет с информация за подсет клиента (RFC 7871). Уязвимостта може да се използва за изменение на маршрута на DNS отговора и пренасочване на потребителите към домейн на атакуващия. Уязвимостта е причинена от това, че в функцията check_source() е предадена дължината на OPT записа вместо дължината на пакета, което е довело до винаги успешен резултат от проверката.
- CVE-2026-4891 — четене извън границите на буфера при валидация на DNSSEC, което води до изтичане на данни от паметта на процеса в отговора при обработка на специално форматиран DNS запрос.
- CVE-2026-4890 — зацикляне при валидация на DNSSEC, което позволява предизвикване на отказ на услуга чрез изпращане на специално форматиран DNS пакет.
- CVE-2026-5172 — четене извън границите на буфера в функцията extract_addresses(), което води до аварийно спиране при обработка на специално форматирани DNS отговори.
Статус на отстраняването на уязвимостите в дистрибутивите може да бъде оценен на тези страници (ако страницата не е достъпна, разработчиците на дистрибутива все още не са започнали да разглеждат проблема): Debian, Ubuntu, SUSE, RHEL, Gentoo, Arch, Fedora, OpenWRT, FreeBSD. Проектът Dnsmasq е ангажиран в платформата Android и специализирани дистрибутиви, като OpenWrt и DD-WRT, а също така и в фърмуерите на безжични маршрутизатори на много производители. В обикновените дистрибутиви Dnsmasq може да се инсталира с помощта на libvirt за осигуряване на DNS услуга в виртуални машини или да се активира в конфигуратора на NetworkManager.
Източник: opennet.ru
