|Description||The DNS protocol, as implemented in (1) BIND 8 and 9 before 9.5.0-P1, 9.4.2-P1, and 9.3.5-P1; (2) Microsoft DNS in Windows 2000 SP4, XP SP2 and SP3, and Server 2003 SP1 and SP2; and other implementations allow remote attackers to spoof DNS traffic via a birthday attack that uses in-bailiwick referrals to conduct cache poisoning against recursive resolvers, related to insufficient randomness of DNS transaction IDs and source ports, aka "DNS Insufficient Socket Entropy Vulnerability" or "the Kaminsky bug."|
|Source||CVE (at NVD; CERT, LWN, oss-sec, fulldisc, bugtraq, EDB, Metasploit, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, Mageia, GitHub code/issues, web search, more)|
|References||DSA-1603-1, DSA-1604-1, DSA-1605-1, DSA-1617-1, DSA-1619-1, DSA-1623-1, DTSA-147-1|
|NVD severity||medium (attack range: remote)|
|Debian Bugs||490123, 490217, 492465, 492698, 492700, 493599, 502275|
Vulnerable and fixed packages
The table below lists information on source packages.
|adns (PTS)||jessie, stretch||1.5.0~rc1-1||fixed|
|bind9 (PTS)||jessie, jessie (security)||1:9.9.5.dfsg-9+deb8u15||fixed|
|stretch, stretch (security)||1:9.10.3.dfsg.P4-12.3+deb9u4||fixed|
|dnsmasq (PTS)||jessie, jessie (security)||2.72-3+deb8u2||fixed|
|stretch, stretch (security)||2.76-5+deb9u1||fixed|
|buster, sid, stretch||1.15.0-1||vulnerable|
|libnet-dns-perl (PTS)||jessie, jessie (security)||0.81-2+deb8u1||fixed|
|python-dns (PTS)||jessie, stretch||2.3.6-3||fixed|
|udns (PTS)||buster, sid, jessie, stretch||0.4-1||fixed|
The information below is based on the following data on fixed versions.
glibc stub resolver relies on source port randomisation in kernel
Just a stub resolver Linux kernel provides source port randomisation
adns is not suitable to use with untrusted responses, documented in README.Debian
Source port randomization from Lenny kernel should provide sufficient protection
since this is just a Perl nodule for DNS queries and not a high-profile server app like
Bind, it's unlikely that a home-grown fix will provide an implementation of higher
cryptographical quality. Marking the version from Lenny as fixed, since Lenny includes
a kernel which provides source port randomization
Unbound, djbdns, pdnsd and PowerDNS are affected by the underlying protocol issue, but
already use source port randomization.
Marking non-caching stub resolvers as low since these really should be fixed,
but are much less vulnerable than a caching server.