A flaw was found in dnsmasq before version 2.83. A heap-based buffer overflow was discovered in dnsmasq when DNSSEC is enabled and before it validates the received DNS entries. This flaw allows a remote attacker, who can create valid DNS replies, to cause an overflow in a heap-allocated memory. This flaw is caused by the lack of length checks in rfc1035.c:extract_name(), which could be abused to make the code execute memcpy() with a negative size in sort_rrset() and cause a crash in dnsmasq, resulting in a denial of service. The highest threat from this vulnerability is to system availability.
A heap overflow condition is a buffer overflow, where the buffer that can be overwritten is allocated in the heap portion of memory, generally meaning that the buffer was allocated using a routine such as malloc().
Name | Vendor | Start Version | End Version |
---|---|---|---|
Dnsmasq | Thekelleys | * | 2.83 (excluding) |
Red Hat Enterprise Linux 8 | RedHat | dnsmasq-0:2.79-13.el8_3.1 | * |
Red Hat Enterprise Linux 8.1 Extended Update Support | RedHat | dnsmasq-0:2.79-6.el8_1.1 | * |
Red Hat Enterprise Linux 8.2 Extended Update Support | RedHat | dnsmasq-0:2.79-11.el8_2.2 | * |
Dnsmasq | Ubuntu | bionic | * |
Dnsmasq | Ubuntu | devel | * |
Dnsmasq | Ubuntu | focal | * |
Dnsmasq | Ubuntu | groovy | * |
Dnsmasq | Ubuntu | hirsute | * |
Dnsmasq | Ubuntu | impish | * |
Dnsmasq | Ubuntu | jammy | * |
Dnsmasq | Ubuntu | kinetic | * |
Dnsmasq | Ubuntu | lunar | * |
Dnsmasq | Ubuntu | mantic | * |
Dnsmasq | Ubuntu | noble | * |
Dnsmasq | Ubuntu | oracular | * |
Dnsmasq | Ubuntu | precise/esm | * |
Dnsmasq | Ubuntu | trusty | * |
Dnsmasq | Ubuntu | upstream | * |
Dnsmasq | Ubuntu | xenial | * |