Gentoo Logo

pdnsd: Denial of Service and cache poisoning


1.  Gentoo Linux Security Advisory

Version Information

Advisory Reference GLSA 200901-03 / pdnsd
Release Date January 11, 2009
Latest Revision January 11, 2009: 01
Impact normal
Exploitable remote
Package Vulnerable versions Unaffected versions Architecture(s)
net-dns/pdnsd < 1.2.7 >= 1.2.7 All supported architectures

Related bugreports: #231285


Two errors in pdnsd allow for Denial of Service and cache poisoning.

2.  Impact Information


pdnsd is a proxy DNS server with permanent caching that is designed to cope with unreachable DNS servers.


Two issues have been reported in pdnsd:

  • The p_exec_query() function in src/dns_query.c does not properly handle many entries in the answer section of a DNS reply, related to a "dangling pointer bug" (CVE-2008-4194).
  • The default value for query_port_start was set to 0, disabling UDP source port randomization for outgoing queries (CVE-2008-1447).


An attacker could exploit the second weakness to poison the cache of pdnsd and thus spoof DNS traffic, which could e.g. lead to the redirection of web or mail traffic to malicious sites. The first issue can be exploited by enticing pdnsd to send a query to a malicious DNS server, or using the port randomization weakness, and might lead to a Denial of Service.

3.  Resolution Information


Port randomization can be enabled by setting the "query_port_start" option to 1024 which would resolve the CVE-2008-1447 issue.


All pdnsd users should upgrade to the latest version:

Code Listing 3.1: Resolution

# emerge --sync
# emerge --ask --oneshot --verbose ">=net-dns/pdnsd-1.2.7"

4.  References


Page updated January 11, 2009

Summary: This is a Gentoo Linux Security Advisory

Security Team
Contact Address

Donate to support our development efforts.

Copyright 2001-2015 Gentoo Foundation, Inc. Questions, Comments? Contact us.