SuSE: bind (SUSE-SA:2008:033)
Posted by Benjamin D. Thomas   
SuSE The new version of bind uses a random transaction-ID (TRXID) and a random UDP source-port for DNS queries to address DNS cache poisoning attacks possible because of the "birthday paradox" and an attack discovered by Dan Kaminsky. Unfortunately we do not have details about Kaminsky's attack and have to trust the statement that a random UDP source-port is sufficient to stop it.
______________________________________________________________________________

                        SUSE Security Announcement

        Package:                bind
        Announcement ID:        SUSE-SA:2008:033
        Date:                   Fri, 11 Jul 2008 09:00:00 +0000
        Affected Products:      openSUSE 10.2
                                openSUSE 10.3
                                openSUSE 11.0
                                SUSE SLES 9
                                Novell Linux Desktop 9
                                Open Enterprise Server
                                Novell Linux POS 9
                                SUSE Linux Enterprise Desktop 10 SP1
                                SLE SDK 10 SP1
                                SLE SDK 10 SP2
                                SUSE Linux Enterprise Server 10 SP1
                                SUSE Linux Enterprise Desktop 10 SP2
                                SUSE Linux Enterprise Server 10 SP2
        Vulnerability Type:     DNS cache poisoning
        Severity (1-10):        9
        SUSE Default Package:   no
        Cross-References:       CVE-2008-1447

    Content of This Advisory:
        1) Security Vulnerability Resolved:
             DNS cache poisoning
        2) Solution or Work-Around
        3) Special Instructions and Notes
        4) Package Location and Checksums
        5) Pending Vulnerabilities, Solutions, and Work-Arounds:
        6) Authenticity Verification and Additional Information

______________________________________________________________________________

1) Problem Description and Brief Discussion

   The bind daemon is responsible for resolving hostnames in IP addresses and
   vice versa.
   The new version of bind uses a random transaction-ID (TRXID) and a random
   UDP source-port for DNS queries to address DNS cache poisoning attacks
   possible because of the "birthday paradox" and an attack discovered by Dan
   Kaminsky. Unfortunately we do not have details about Kaminsky's attack and
   have to trust the statement that a random UDP source-port is sufficient to
   stop it.
   DNS servers that do not support recursive queries or do not use a cache
   (authoritative only servers) are not vulnerable too.
 
   Update packages of bind9 for SLES8 will be available soon.
  
   The glibc stub resolver is known to be vulnerable too and we will publish
   updates as soon as possible.
   
   Note, a local attacker can always sniff DNS queries and generate spoofed
   responses easily.
   
   If you use the UDP source-port number of the DNS server in your firewall
   configuration, for example to let DNS queries through your packetfilter,
   then you have to take steps to adapt your filter rules to the new behavior
   of the DNS server.

2) Solution or Work-Around

   To protect your infrastructure from cache poisoning attacks you should
   provide two DNS servers.
   One that is authoritative only and accessible from the Internet to resolve
   queries for your local systems that are available over the Internet. The
   other system (caching) is not accessible over the Internet and can be used
   by internal clients to recursively lookup names and addresses.

   But we encourage you to install the bind update as soon as possible too.
   
   If you use the latest update of pdns-recursor you are not vulnerable to
   this attack.

   For the glibc stub resolver bug you can install a local secure DNS for-
   warder on your machine or make a DNS forwarder available for a protected
   network.

3) Special Instructions and Notes

   Please restart the bind daemon after the update.

4) Package Location and Checksums

   The preferred method for installing security updates is to use the YaST
   Online Update (YOU) tool. YOU detects which updates are required and
   automatically performs the necessary steps to verify and install them.
   Alternatively, download the update packages for your distribution manually
   and verify their integrity by the methods listed in Section 6 of this
   announcement. Then install the packages using the command

     rpm -Fhv 

   to apply the update, replacing  with the filename of the
   downloaded RPM package.

   
   x86 Platform:
   
   openSUSE 11.0:
   http://download.opensuse.org/pub/opensuse/update/11.0/rpm/i586/bind-9.4.2-39.2.i586.rpm
   http://download.opensuse.org/pub/opensuse/update/11.0/rpm/i586/bind-chrootenv-9.4.2-39.2.i586.rpm
   http://download.opensuse.org/pub/opensuse/update/11.0/rpm/i586/bind-devel-9.4.2-39.2.i586.rpm
   http://download.opensuse.org/pub/opensuse/update/11.0/rpm/i586/bind-doc-9.4.2-39.2.i586.rpm
   http://download.opensuse.org/pub/opensuse/update/11.0/rpm/i586/bind-libs-9.4.2-39.2.i586.rpm
   http://download.opensuse.org/pub/opensuse/update/11.0/rpm/i586/bind-utils-9.4.2-39.2.i586.rpm
   
   openSUSE 10.3:
   http://download.opensuse.org/pub/opensuse/update/10.3/rpm/i586/bind-9.4.1.P1-12.5.i586.rpm
   http://download.opensuse.org/pub/opensuse/update/10.3/rpm/i586/bind-chrootenv-9.4.1.P1-12.5.i586.rpm
   http://download.opensuse.org/pub/opensuse/update/10.3/rpm/i586/bind-devel-9.4.1.P1-12.5.i586.rpm
   http://download.opensuse.org/pub/opensuse/update/10.3/rpm/i586/bind-doc-9.4.1.P1-12.5.i586.rpm
   http://download.opensuse.org/pub/opensuse/update/10.3/rpm/i586/bind-libs-9.4.1.P1-12.5.i586.rpm
   http://download.opensuse.org/pub/opensuse/update/10.3/rpm/i586/bind-utils-9.4.1.P1-12.5.i586.rpm
   
   openSUSE 10.2:
   ftp://ftp.suse.com/pub/suse/update/10.2/rpm/i586/bind-9.3.5P1-0.1.i586.rpm
   ftp://ftp.suse.com/pub/suse/update/10.2/rpm/i586/bind-chrootenv-9.3.5P1-0.1.i586.rpm
   ftp://ftp.suse.com/pub/suse/update/10.2/rpm/i586/bind-devel-9.3.5P1-0.1.i586.rpm
   ftp://ftp.suse.com/pub/suse/update/10.2/rpm/i586/bind-doc-9.3.5P1-0.1.i586.rpm
   ftp://ftp.suse.com/pub/suse/update/10.2/rpm/i586/bind-libs-9.3.5P1-0.1.i586.rpm
   ftp://ftp.suse.com/pub/suse/update/10.2/rpm/i586/bind-utils-9.3.5P1-0.1.i586.rpm
   
   x86-64 Platform:
   
   openSUSE 11.0:
   http://download.opensuse.org/pub/opensuse/update/11.0/rpm/x86_64/bind-libs-32bit-9.4.2-39.2.x86_64.rpm
   
   openSUSE 10.3:
   http://download.opensuse.org/pub/opensuse/update/10.3/rpm/x86_64/bind-libs-32bit-9.4.1.P1-12.5.x86_64.rpm
   
   openSUSE 10.2:
   ftp://ftp.suse.com/pub/suse/update/10.2/rpm/x86_64/bind-libs-32bit-9.3.5P1-0.1.x86_64.rpm
   
   Sources:
   
   openSUSE 11.0:
   http://download.opensuse.org/pub/opensuse/update/11.0/rpm/src/bind-9.4.2-39.2.src.rpm
   
   openSUSE 10.3:
   http://download.opensuse.org/pub/opensuse/update/10.3/rpm/src/bind-9.4.1.P1-12.5.src.rpm
   
   openSUSE 10.2:
   ftp://ftp.suse.com/pub/suse/update/10.2/rpm/src/bind-9.3.5P1-0.1.src.rpm
   
   Our maintenance customers are notified individually. The packages are
   offered for installation from the maintenance web:
   
   Open Enterprise Server
     http://support.novell.com/techcenter/psdb/aa846ea840c9bf29e6974f3b6913e550.html
   
   Novell Linux POS 9
     http://support.novell.com/techcenter/psdb/aa846ea840c9bf29e6974f3b6913e550.html
   
   Novell Linux Desktop 9
     http://support.novell.com/techcenter/psdb/aa846ea840c9bf29e6974f3b6913e550.html
   
   SUSE SLES 9
     http://support.novell.com/techcenter/psdb/aa846ea840c9bf29e6974f3b6913e550.html
   
   SUSE Linux Enterprise Server 10 SP1
     http://support.novell.com/techcenter/psdb/555065b7278085ce1ce7a6e84b6f07aa.html
   
   SUSE Linux Enterprise Server 10 SP2
     http://support.novell.com/techcenter/psdb/555065b7278085ce1ce7a6e84b6f07aa.html
   
   SLE SDK 10 SP2
     http://support.novell.com/techcenter/psdb/555065b7278085ce1ce7a6e84b6f07aa.html
   
   SUSE Linux Enterprise 10 SP2 DEBUGINFO
     http://support.novell.com/techcenter/psdb/555065b7278085ce1ce7a6e84b6f07aa.html
   
   SLE SDK 10 SP1
     http://support.novell.com/techcenter/psdb/555065b7278085ce1ce7a6e84b6f07aa.html
   
   SUSE Linux Enterprise Desktop 10 SP1
     http://support.novell.com/techcenter/psdb/555065b7278085ce1ce7a6e84b6f07aa.html
   
   SUSE Linux Enterprise Desktop 10 SP2
     http://support.novell.com/techcenter/psdb/555065b7278085ce1ce7a6e84b6f07aa.html

______________________________________________________________________________

5) Pending Vulnerabilities, Solutions, and Work-Arounds:

   none
______________________________________________________________________________

6) Authenticity Verification and Additional Information

  - Announcement authenticity verification:

    SUSE security announcements are published via mailing lists and on Web
    sites. The authenticity and integrity of a SUSE security announcement is
    guaranteed by a cryptographic signature in each announcement. All SUSE
    security announcements are published with a valid signature.

    To verify the signature of the announcement, save it as text into a file
    and run the command

      gpg --verify 

    replacing  with the name of the file where you saved the
    announcement. The output for a valid signature looks like:

      gpg: Signature made  using RSA key ID 3D25D3D9
      gpg: Good signature from "SuSE Security Team "

    where  is replaced by the date the document was signed.

    If the security team's key is not contained in your key ring, you can
    import it from the first installation CD. To import the key, use the
    command

      gpg --import gpg-pubkey-3d25d3d9-36e12d04.asc

  - Package authenticity verification:

    SUSE update packages are available on many mirror FTP servers all over the
    world. While this service is considered valuable and important to the free
    and open source software community, the authenticity and the integrity of
    a package needs to be verified to ensure that it has not been tampered
    with.

    The internal rpm package signatures provide an easy way to verify the
    authenticity of an RPM package. Use the command

     rpm -v --checksig 

    to verify the signature of the package, replacing  with the
    filename of the RPM package downloaded. The package is unmodified if it
    contains a valid signature from build@suse.de with the key ID 9C800ACA.

    This key is automatically imported into the RPM database (on
    RPMv4-based distributions) and the gpg key ring of 'root' during
    installation. You can also find it on the first installation CD and at
    the end of this announcement.

  - SUSE runs two security mailing lists to which any interested party may
    subscribe:

    opensuse-security@opensuse.org
        -   General Linux and SUSE security discussion.
            All SUSE security announcements are sent to this list.
            To subscribe, send an e-mail to
                .

    opensuse-security-announce@opensuse.org
        -   SUSE's announce-only mailing list.
            Only SUSE's security announcements are sent to this list.
            To subscribe, send an e-mail to
                .

    =====================================================================
    SUSE's security contact is  or .
    The  public key is listed below.
    =====================================================================
______________________________________________________________________________

    The information in this advisory may be distributed or reproduced,
    provided that the advisory is not modified in any way. In particular, the
    clear text signature should show proof of the authenticity of the text.

    SUSE Linux Products GmbH provides no warranties of any kind whatsoever
    with respect to the information contained in this security advisory.