Schwachstellen in dnsmasq, die eine DNS-Cache-Vergiftung und die Ausführung von Code mit Root-Rechten ermöglichen.

Im Paket Dnsmasq, das einen zwischenspeichernden DNS-Resolver, einen DHCP-Server, einen Dienst für IPv6-Routenankündigungen und ein Netzwerk-Boot-System kombiniert, wurden 6 Schwachstellen entdeckt, die es ermöglichen, Code mit root-Rechten auszuführen, eine Domain auf eine andere IP weiterzuleiten, den Inhalt des Arbeitsspeichers eines Prozesses zu bestimmen und den Dienst zum Absturz zu bringen. Die Probleme wurden in der Version dnsmasq 2.92rel2 behoben. Die Korrekturen sind auch in Form von Patches verfügbar.

Festgestellte Probleme:

  • CVE-2026-4892 — ein Pufferüberlauf in der Implementierung von DHCPv6, der einem Angreifer, der Zugriff auf das lokale Netzwerk hat, ermöglicht, Code mit root-Rechten durch das Senden eines speziell gestalteten DHCPv6-Pakets auszuführen. Der Überlauf tritt auf, da beim Schreiben des DHCPv6 CLID in den Puffer nicht berücksichtigt wird, dass die Daten im Paket in hexadezimaler Darstellung gespeichert werden, wobei für jedes tatsächliche Byte des CLID drei Bytes „%xx“ verwendet werden (zum Beispiel führt die Speicherung eines 1000-Byte CLID zu einer Speicherung von 3000 Bytes).
  • CVE-2026-2291 — ein Pufferüberlauf in der Funktion extract_name(), der es einem Angreifer ermöglicht, gefälschte Einträge in den DNS-Cache einzufügen und eine Umleitung der Domain unterscheiden, gesetzt werden. auf eine andere IP-Adresse zu erreichen. Der Überlauf trat auf, weil der Puffer ohne Berücksichtigung der Escapierung bestimmter Zeichen in der internen Darstellung des Domänennamens in dnsmasq zugewiesen wurde.
  • CVE-2026-4893 — eine Informationsleckage, die eine Umgehung der Überprüfung ermöglicht, indem ein speziell gestaltetes DNS-Paket mit Informationen über das Client-Subnetz (RFC 7871) gesendet wird. Die Schwachstelle kann verwendet werden, um den DNS-Antwortpfad zu ändern und Benutzer auf die Domain des Angreifers umzuleiten. Die Schwachstelle tritt auf, weil der Funktion check_source() die Länge des OPT-Eintrags anstelle der Länge des Pakets übergeben wurde, was dazu führte, dass die Funktion immer ein erfolgreiches Prüfresultat zurückgab.
  • CVE-2026-4891 — Auslesen aus einem Bereich außerhalb des Puffers bei der Validierung von DNSSEC, was zu einem Leck von Daten aus dem Arbeitsspeicher in der Antwort bei der Verarbeitung eines speziell gestalteten DNS-Anforderung führt.
  • CVE-2026-4890 — Endlosschleife bei der Validierung von DNSSEC, die einen Denial-of-Service durch das Senden eines speziell gestalteten DNS-Pakets ermöglicht.
  • CVE-2026-5172 — Lesen aus einem Bereich außerhalb des Puffers in der Funktion extract_addresses(), was zu einem Absturz beim Verarbeiten speziell gestalteter DNS-Antworten führt.

Der Status der Behebung von Schwachstellen in den Distributionen kann auf den folgenden Seiten bewertet werden (wenn die Seite nicht verfügbar ist, haben die Entwickler der Distribution noch nicht mit der Überprüfung des Problems begonnen): Debian, Ubuntu, SUSE, RHEL, Gentoo, Arch, Fedora, OpenWRT, FreeBSD. Das Projekt Dnsmasq wird in der Android-Plattform und in spezialisierten Distributionen wie OpenWrt und DD-WRT eingesetzt sowie in der Firmware von vielen Herstellern von drahtlosen Routern. In regulären Distributionen kann Dnsmasq installiert werden, wenn libvirt verwendet wird, um die Funktion des DNS-Dienstes zu gewährleisten. virtuellen Maschinen oder im Konfigurator von NetworkManager aktiviert werden.

Quelle: opennet.ru

60GB SSD 8Gb DDR4