ALPINE-CVE-2020-25685
A flaw was found in dnsmasq before version 2.83. When getting a reply from a forwarded query, dnsmasq checks in forward.c:reply_query(), which is the forwarded query that matches the reply, by only using a weak hash of the query name. Due to the weak hash (CRC32 when dnsmasq is compiled without DNSSEC, SHA-1 when it is) this flaw allows an off-path attacker to find several different domains all having the same hash, substantially reducing the number of attempts they would have to perform to forge a reply and get it accepted by dnsmasq. This is in contrast with RFC5452, which specifies that the query name is one of the attributes of a query that must be used to match a reply. This flaw could be abused to perform a DNS Cache Poisoning attack. If chained with CVE-2020-25684 the attack complexity of a successful attack is reduced. The highest threat from this vulnerability is to data integrity.
Risk Scores
Affected Products
| Vendor | Product | Versions |
|---|---|---|
| Alpine:v3.15 | dnsmasq | 0, 0, 0 |
| Alpine:v3.13 | dnsmasq | 2.69-r0, 2.62-r0, 2.61-r0 |
| Alpine:v3.20 | dnsmasq | 0, 0, 0 |
| Alpine:v3.11 | dnsmasq | 2.66-r2, 2.66-r1, 2.66-r0 |
| Alpine:v3.14 | dnsmasq | 2.63-r0, 0, 2.46-r0 |
| Alpine:v3.19 | dnsmasq | 0, 0, 0 |
| Alpine:v3.12 | dnsmasq | 2.67-r0, 2.81-r0, 2.80-r5 |
| Alpine:v3.16 | dnsmasq | 0, 0, 0 |
| Alpine:v3.10 | dnsmasq | 2.46-r0, 0, 2.65-r0 |
| Alpine:v3.21 | dnsmasq | 0, 0, 0 |
| Alpine:v3.18 | dnsmasq | 0, 0, 0 |
| Alpine:v3.17 | dnsmasq | 0, 0, 0 |
| Alpine:v3.23 | dnsmasq | 0, 0, 0 |
| Alpine:v3.22 | dnsmasq | 0, 0, 0 |
Timeline
- Jan 20, 2021 CVE Published
- Dec 3, 2025 CVE Updated
- Apr 30, 2026 Distribution Patch