J-Security Center

Title: Ruby 'resolv.rb' Predictable Transaction ID and Source Port DNS Spoofing Vulnerability

Severity: HIGH

Description:

Ruby is an object-oriented scripting language.

Ruby is prone to a DNS-spoofing vulnerability because the software fails to securely implement random values when performing DNS queries.

Specifically, this issue occurs because 'resolv.rb' uses sequential DNS transaction IDs and fixed source port values for DNS requests. Successfully exploiting this issue allows remote attackers to spoof DNS replies, allowing them to redirect network traffic and to launch man-in-the-middle attacks.

The following versions of Ruby are affected:

1.8.5 and prior
1.8.6-p286 and prior
1.8.7-p71 and prior
1.9 r18423 and prior

Affected Products:

  • Debian Linux 3.0.0
  • Debian Linux 3.0.0 alpha
  • Debian Linux 3.0.0 arm
  • Debian Linux 3.0.0 hppa
  • Debian Linux 3.0.0 ia-32
  • Debian Linux 3.0.0 ia-64
  • Debian Linux 3.0.0 m68k
  • Debian Linux 3.0.0 mips
  • Debian Linux 3.0.0 mipsel
  • Debian Linux 3.0.0 ppc
  • Debian Linux 3.0.0 s/390
  • Debian Linux 3.0.0 sparc
  • Debian Linux 4.0
  • Debian Linux 4.0 alpha
  • Debian Linux 4.0 amd64
  • Debian Linux 4.0 arm
  • Debian Linux 4.0 hppa
  • Debian Linux 4.0 ia-32
  • Debian Linux 4.0 ia-64
  • Debian Linux 4.0 m68k
  • Debian Linux 4.0 mips
  • Debian Linux 4.0 mipsel
  • Debian Linux 4.0 powerpc
  • Debian Linux 4.0 s/390
  • Debian Linux 4.0 sparc
  • Gentoo Linux
  • MandrakeSoft Corporate Server 3.0.0
  • MandrakeSoft Corporate Server 3.0.0 x86_64
  • MandrakeSoft Corporate Server 4.0
  • MandrakeSoft Corporate Server 4.0.0 x86_64
  • MandrakeSoft Linux Mandrake 2008.0
  • MandrakeSoft Linux Mandrake 2008.0 x86_64
  • MandrakeSoft Linux Mandrake 2008.1
  • MandrakeSoft Linux Mandrake 2008.1 x86_64
  • RedHat Desktop 3.0.0
  • RedHat Desktop 4.0.0
  • RedHat Enterprise Linux 5 server
  • RedHat Enterprise Linux AS 3
  • RedHat Enterprise Linux AS 4
  • RedHat Enterprise Linux Desktop 5 client
  • RedHat Enterprise Linux Desktop Workstation 5 client
  • RedHat Enterprise Linux ES 3
  • RedHat Enterprise Linux ES 4
  • RedHat Enterprise Linux WS 3
  • RedHat Enterprise Linux WS 4
  • RedHat Fedora 8
  • RedHat Fedora Core2
  • RedHat Fedora Core3
  • RedHat Fedora Core4
  • Ubuntu Ubuntu Linux 4.1.0 ia32
  • Ubuntu Ubuntu Linux 4.1.0 ia64
  • Ubuntu Ubuntu Linux 4.1.0 ppc
  • Ubuntu Ubuntu Linux 5.0.0 4 amd64
  • Ubuntu Ubuntu Linux 5.0.0 4 i386
  • Ubuntu Ubuntu Linux 5.0.0 4 powerpc
  • Ubuntu Ubuntu Linux 6.06 LTS amd64
  • Ubuntu Ubuntu Linux 6.06 LTS i386
  • Ubuntu Ubuntu Linux 6.06 LTS powerpc
  • Ubuntu Ubuntu Linux 6.06 LTS sparc
  • Ubuntu Ubuntu Linux 7.04 amd64
  • Ubuntu Ubuntu Linux 7.04 i386
  • Ubuntu Ubuntu Linux 7.04 powerpc
  • Ubuntu Ubuntu Linux 7.04 sparc
  • Ubuntu Ubuntu Linux 7.10 amd64
  • Ubuntu Ubuntu Linux 7.10 i386
  • Ubuntu Ubuntu Linux 7.10 lpia
  • Ubuntu Ubuntu Linux 7.10 powerpc
  • Ubuntu Ubuntu Linux 7.10 sparc
  • Ubuntu Ubuntu Linux 8.04 LTS amd64
  • Ubuntu Ubuntu Linux 8.04 LTS i386
  • Ubuntu Ubuntu Linux 8.04 LTS lpia
  • Ubuntu Ubuntu Linux 8.04 LTS powerpc
  • Ubuntu Ubuntu Linux 8.04 LTS sparc
  • Yukihiro Matsumoto Ruby 1.6.0
  • Yukihiro Matsumoto Ruby 1.6.7
  • Yukihiro Matsumoto Ruby 1.6.8
  • Yukihiro Matsumoto Ruby 1.8.0
  • Yukihiro Matsumoto Ruby 1.8.1
  • Yukihiro Matsumoto Ruby 1.8.2
  • Yukihiro Matsumoto Ruby 1.8.2 pre1
  • Yukihiro Matsumoto Ruby 1.8.2 pre2
  • Yukihiro Matsumoto Ruby 1.8.2 pre3
  • Yukihiro Matsumoto Ruby 1.8.2 pre4
  • Yukihiro Matsumoto Ruby 1.8.3
  • Yukihiro Matsumoto Ruby 1.8.4
  • Yukihiro Matsumoto Ruby 1.8.5
  • Yukihiro Matsumoto Ruby 1.8.5-p115
  • Yukihiro Matsumoto Ruby 1.8.5-p2
  • Yukihiro Matsumoto Ruby 1.8.5-p230
  • Yukihiro Matsumoto Ruby 1.8.5-p231
  • Yukihiro Matsumoto Ruby 1.8.6
  • Yukihiro Matsumoto Ruby 1.8.6-p114
  • Yukihiro Matsumoto Ruby 1.8.6-p229
  • Yukihiro Matsumoto Ruby 1.8.6-p230
  • Yukihiro Matsumoto Ruby 1.8.6-p286
  • Yukihiro Matsumoto Ruby 1.8.7
  • Yukihiro Matsumoto Ruby 1.8.7-p21
  • Yukihiro Matsumoto Ruby 1.8.7-p22
  • Yukihiro Matsumoto Ruby 1.8.7-p71
  • Yukihiro Matsumoto Ruby 1.9

References:

Juniper Networks provides this content via a wide variety of sources and production methods. If notified of errors or omissions in the content of this page, Juniper Networks, at its discretion, will modify or remove the page or leave the content as is, depending on various factors including but not limited to the reputation and authority of the party providing the notification. Please use the contact information displayed elsewhere on this page to report any errors or omissions regarding the content on this page.