CVE-2008-4310 WEBrick Denial of Service Vulnerability
Remote attackers can cause denial of service via CPU consumption in the Ruby WEBrick library through crafted HTTP requests.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2008-4310?
CVE-2008-4310 is a high-severity denial of service vulnerability in Ruby-Lang Ruby, published on 9 Dec 2008. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
httputils.rb in WEBrick in Ruby 1.8.1 and 1.8.5, as used in Red Hat Enterprise Linux 4 and 5, allows remote attackers to cause a denial of service (CPU consumption) via a crafted HTTP request. NOTE: this issue exists because of an incomplete fix for CVE-2008-3656.
Weakness: CWE-399
Which versions are affected by CVE-2008-4310?
2 open source packages ship an affected version, including webrick. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
webrick RubyGems | All versions | 1.3.1 |
webrick RubyGems | All versions | 1.3.1 |
Linux distribution packages (38)
irb Red Hat:enterprise_linux:4::as | All versions | 0:1.8.1-7.el4_7.2 |
ruby Red Hat:enterprise_linux:4::as | All versions | 0:1.8.1-7.el4_7.2 |
ruby-debuginfo Red Hat:enterprise_linux:4::as | All versions | 0:1.8.1-7.el4_7.2 |
ruby-devel Red Hat:enterprise_linux:4::as | All versions | 0:1.8.1-7.el4_7.2 |
ruby-docs Red Hat:enterprise_linux:4::as | All versions | 0:1.8.1-7.el4_7.2 |
ruby-libs Red Hat:enterprise_linux:4::as | All versions | 0:1.8.1-7.el4_7.2 |
ruby-mode Red Hat:enterprise_linux:4::as | All versions | 0:1.8.1-7.el4_7.2 |
ruby-tcltk Red Hat:enterprise_linux:4::as | All versions | 0:1.8.1-7.el4_7.2 |
irb Red Hat:enterprise_linux:4::desktop | All versions | 0:1.8.1-7.el4_7.2 |
ruby Red Hat:enterprise_linux:4::desktop | All versions | 0:1.8.1-7.el4_7.2 |
ruby-debuginfo Red Hat:enterprise_linux:4::desktop | All versions | 0:1.8.1-7.el4_7.2 |
ruby-devel Red Hat:enterprise_linux:4::desktop | All versions | 0:1.8.1-7.el4_7.2 |
ruby-docs Red Hat:enterprise_linux:4::desktop | All versions | 0:1.8.1-7.el4_7.2 |
ruby-libs Red Hat:enterprise_linux:4::desktop | All versions | 0:1.8.1-7.el4_7.2 |
ruby-mode Red Hat:enterprise_linux:4::desktop | All versions | 0:1.8.1-7.el4_7.2 |
ruby-tcltk Red Hat:enterprise_linux:4::desktop | All versions | 0:1.8.1-7.el4_7.2 |
irb Red Hat:enterprise_linux:4::es | All versions | 0:1.8.1-7.el4_7.2 |
ruby Red Hat:enterprise_linux:4::es | All versions | 0:1.8.1-7.el4_7.2 |
ruby-debuginfo Red Hat:enterprise_linux:4::es | All versions | 0:1.8.1-7.el4_7.2 |
ruby-devel Red Hat:enterprise_linux:4::es | All versions | 0:1.8.1-7.el4_7.2 |
ruby-docs Red Hat:enterprise_linux:4::es | All versions | 0:1.8.1-7.el4_7.2 |
ruby-libs Red Hat:enterprise_linux:4::es | All versions | 0:1.8.1-7.el4_7.2 |
ruby-mode Red Hat:enterprise_linux:4::es | All versions | 0:1.8.1-7.el4_7.2 |
ruby-tcltk Red Hat:enterprise_linux:4::es | All versions | 0:1.8.1-7.el4_7.2 |
irb Red Hat:enterprise_linux:4::ws | All versions | 0:1.8.1-7.el4_7.2 |
ruby Red Hat:enterprise_linux:4::ws | All versions | 0:1.8.1-7.el4_7.2 |
ruby-debuginfo Red Hat:enterprise_linux:4::ws | All versions | 0:1.8.1-7.el4_7.2 |
ruby-devel Red Hat:enterprise_linux:4::ws | All versions | 0:1.8.1-7.el4_7.2 |
ruby-docs Red Hat:enterprise_linux:4::ws | All versions | 0:1.8.1-7.el4_7.2 |
ruby-libs Red Hat:enterprise_linux:4::ws | All versions | 0:1.8.1-7.el4_7.2 |
ruby-mode Red Hat:enterprise_linux:4::ws | All versions | 0:1.8.1-7.el4_7.2 |
ruby-tcltk Red Hat:enterprise_linux:4::ws | All versions | 0:1.8.1-7.el4_7.2 |
ruby Red Hat:enterprise_linux:5::client | All versions | 0:1.8.5-5.el5_2.6 |
ruby-debuginfo Red Hat:enterprise_linux:5::client | All versions | 0:1.8.5-5.el5_2.6 |
ruby-docs Red Hat:enterprise_linux:5::client | All versions | 0:1.8.5-5.el5_2.6 |
ruby-irb Red Hat:enterprise_linux:5::client | All versions | 0:1.8.5-5.el5_2.6 |
ruby-libs Red Hat:enterprise_linux:5::client | All versions | 0:1.8.5-5.el5_2.6 |
ruby-rdoc Red Hat:enterprise_linux:5::client | All versions | 0:1.8.5-5.el5_2.6 |
Products include Ruby-Lang Ruby.
How do I fix CVE-2008-4310?
Upgrade webrick to 1.3.1 or later.
Upgrade, then put limits on request size, rate and nesting depth so one client cannot exhaust the service. More about Denial of service.
Is CVE-2008-4310 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2008-4310 exists.
Public exploit code: 1 Exploit-DB entry.
Other vulnerabilities in Ruby-Lang Ruby
Sources
Also known as GHSA-wfrc-r6c6-7j9r, RHSA-2008:0981.