CVE-2009-4492 in the critical feed json
WEBrick Improper Input Validation vulnerability
published 16y ago modified 4mo ago also EUVD-2017-0178 , GHSA-6mq2-37j5-w6r6
- cvss
- 7.5
- version 2.0, NVD
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 16.2%
- EPSS 16.2% chance of exploitation in 30 days, percentile 96%
- public exploits
- 1
- Exploit-DB
Summary
WEBrick 1.3.1 in Ruby 1.8.6 through patchlevel 383, 1.8.7 through patchlevel 248, 1.8.8dev, 1.9.1 through patchlevel 376, and 1.9.2dev writes data to a log file without sanitizing non-printable characters, which might allow remote attackers to modify a window's title, or possibly execute arbitrary commands or overwrite files, via an HTTP request containing an escape sequence for a terminal emulator.
Patch / fix
- rubygems webrick 1.4.0
- ruby-lang ruby 1.8.6.388, 1.8.7.249, 1.9.1.378
- ruby-lang webrick 1.4.0
- ruby RHEL 5 1.8.5-19.el5_6.1
- ruby-ri RHEL 5 1.8.5-19.el5_6.1
- ruby-irb RHEL 5 1.8.5-19.el5_6.1
- ruby-libs RHEL 5 1.8.5-19.el5_6.1
- ruby-mode RHEL 5 1.8.5-19.el5_6.1
- ruby-rdoc RHEL 5 1.8.5-19.el5_6.1
- ruby-tcltk RHEL 5 1.8.5-19.el5_6.1
- ruby RHEL 4 1.8.1-16.el4
red hat advisories RHSA-2011:0909RHSA-2011:0908
Is CVE-2009-4492 in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerVendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2009-4492 updated cvss 2.6
ruby WEBrick log escape sequence
-
Red Hat Enterprise Linux (v. 5.6.z server) ruby 1.8.5-19.el5_6.1, ruby-ri 1.8.5-19.el5_6.1, ruby-irb 1.8.5-19.el5_6.1, ruby-libs 1.8.5-19.el5_6.1, ruby-mode 1.8.5-19.el5_6.1, ruby-rdoc 1.8.5-19.el5_6.1, +1 morefixed: vendor fix RHSA-2011:0909
-
Red Hat Enterprise Linux AS version 4 irb 1.8.1-16.el4, ruby 1.8.1-16.el4, ruby-libs 1.8.1-16.el4, ruby-mode 1.8.1-16.el4, ruby-tcltk 1.8.1-16.el4 Red Hat Enterprise Linux Desktop version 4 irb 1.8.1-16.el4, ruby 1.8.1-16.el4, ruby-libs 1.8.1-16.el4, ruby-mode 1.8.1-16.el4, ruby-tcltk 1.8.1-16.el4 Red Hat Enterprise Linux ES version 4 irb 1.8.1-16.el4, ruby 1.8.1-16.el4, ruby-libs 1.8.1-16.el4, ruby-mode 1.8.1-16.el4, ruby-tcltk 1.8.1-16.el4 Red Hat Enterprise Linux WS version 4 irb 1.8.1-16.el4, ruby 1.8.1-16.el4, ruby-libs 1.8.1-16.el4, ruby-mode 1.8.1-16.el4, ruby-tcltk 1.8.1-16.el4fixed: vendor fix RHSA-2011:0908
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
Timeline
- First public exploit (EDB-33489)
- Published
Exploit prediction
16.23% chance of exploitation in the next 30 days, higher than 96% of all scored CVEs (FIRST EPSS, 2026-11-09).
Exploits and checks
- EDB-33489 Ruby 1.9.1 - WEBrick 'Terminal Escape Sequence in Logs' Command Injection remote, 2010-01-11
- ush.it http://www.ush.it/team/ush/hack_httpd_escape/adv.txt referenced PoC, tagged "exploit" by a source, unverified
- securityfocus.com http://www.securityfocus.com/bid/37710 referenced PoC, tagged "exploit" by a source, unverified
- securitytracker.com http://securitytracker.com/id?1023429 referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| NVD | 2.0 | 7.5 | AV:N/AC:L/Au:N/C:P/I:P/A:P |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| rubygems | webrick | <1.4.0 |
1.4.0 |
Classification
- Weakness
-
- CWE-20 Improper Input Validation
References
-
ruby-lang.org
/en/news/2010/01/10/webrick-escape-sequence-injection
web, patch, vendor-advisory
-
ush.it
/team/ush/hack_httpd_escape/adv.txt
web, broken-link, exploit
-
securityfocus.com
/bid/37710
vdb-entry, broken-link, exploit, third-party-advisory
-
securitytracker.com
/id?1023429
vdb-entry, broken-link, exploit, third-party-advisory
-
redhat.com
/support/errata/RHSA-2011-0909.html
vendor-advisory, web, third-party-advisory
-
redhat.com
/support/errata/RHSA-2011-0908.html
vendor-advisory, web, third-party-advisory
-
secunia.com
/advisories/37949
third-party-advisory, not-applicable, vendor-advisory
-
vupen.com
/english/advisories/2010/0089
vdb-entry, permissions-required
-
securityfocus.com
/archive/1/508830/100/0/threaded
mailing-list, broken-link, third-party-advisory, vdb-entry
-
nvd.nist.gov
/vuln/detail/CVE-2009-4492
advisory
-
github.com
/advisories/GHSA-6mq2-37j5-w6r6
advisory
-
github.com
/ruby/webrick
package
-
github.com
/rubysec/ruby-advisory-db/blob/master/gems/webrick/CVE-2009-4492.yml
web
-
web.archive.org
/web/20100113155532/http://www.vupen.com/english/advisories/2010/0089
web
-
web.archive.org
/web/20100815010948/http://secunia.com/advisories/37949
web
-
web.archive.org
/web/20170402100552/http://securitytracker.com/id?1023429
web
-
web.archive.org
/web/20170908140655/http://www.securityfocus.com/archive/1/508830/100/0/threaded
web
-
web.archive.org
/web/20200228145937/http://www.securityfocus.com/bid/37710
web
Sources
- CVE List CVE-2009-4492
- GitHub Advisory GHSA-6mq2-37j5-w6r6
- NVD CVE-2009-4492
Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.
CPEs and fixed versions use Anchore's correction of NVD's data: Improved CPE configurations. This old version of WEBrick embedded in old ruby versions was not versioned properly, so just report the vuln as against ruby itself.