BIND: Weak random number generation — GLSA 200708-13

The ISC BIND random number generator uses a weak algorithm, making it easier to guess the next query ID and perform a DNS cache poisoning attack.

Affected packages

net-dns/bind on all architectures
Affected versions < 9.4.1_p1
Unaffected versions >= 9.4.1_p1

Background

ISC BIND is the Internet Systems Consortium implementation of the Domain Name System (DNS) protocol.

Description

Amit Klein from Trusteer reported that the random number generator of ISC BIND leads, half the time, to predictable (1 chance to 8) query IDs in the resolver routine or in zone transfer queries (CVE-2007-2926). Additionally, the default configuration file has been strengthen with respect to the allow-recursion{} and the allow-query{} options (CVE-2007-2925).

Impact

A remote attacker can use this weakness by sending queries for a domain he handles to a resolver (directly to a recursive server, or through another process like an email processing) and then observing the resulting IDs of the iterative queries. The attacker will half the time be able to guess the next query ID, then perform cache poisoning by answering with those guessed IDs, while spoofing the UDP source address of the reply. Furthermore, with empty allow-recursion{} and allow-query{} options, the default configuration allowed anybody to make recursive queries and query the cache.

Workaround

There is no known workaround at this time for the random generator weakness. The allow-recursion{} and allow-query{} options should be set to trusted hosts only in /etc/bind/named.conf, thus preventing several security risks.

Resolution

All ISC BIND users should upgrade to the latest version:

 # emerge --sync
 # emerge --ask --oneshot --verbose ">=net-dns/bind-9.4.1_p1"

References

Release date
August 18, 2007

Latest revision
August 18, 2007: 01

Severity
normal

Exploitable
remote

Bugzilla entries