CVSS2
Attack Vector
NETWORK
Attack Complexity
MEDIUM
Authentication
NONE
Confidentiality Impact
PARTIAL
Integrity Impact
PARTIAL
Availability Impact
PARTIAL
AV:N/AC:M/Au:N/C:P/I:P/A:P
AI Score
Confidence
High
EPSS
Percentile
90.2%
The remote host is missing an update for the Debian
# SPDX-FileCopyrightText: 2009 Greenbone AG
# Some text descriptions might be excerpted from (a) referenced
# source(s), and are Copyright (C) by the respective right holder(s).
#
# SPDX-License-Identifier: GPL-2.0-only
if(description)
{
script_oid("1.3.6.1.4.1.25623.1.0.64639");
script_cve_id("CVE-2009-0642", "CVE-2009-1904");
script_tag(name:"creation_date", value:"2009-08-17 14:54:45 +0000 (Mon, 17 Aug 2009)");
script_version("2024-02-01T14:37:10+0000");
script_tag(name:"last_modification", value:"2024-02-01 14:37:10 +0000 (Thu, 01 Feb 2024)");
script_tag(name:"cvss_base", value:"6.8");
script_tag(name:"cvss_base_vector", value:"AV:N/AC:M/Au:N/C:P/I:P/A:P");
script_name("Debian: Security Advisory (DSA-1860-1)");
script_category(ACT_GATHER_INFO);
script_copyright("Copyright (C) 2009 Greenbone AG");
script_family("Debian Local Security Checks");
script_dependencies("gather-package-list.nasl");
script_mandatory_keys("ssh/login/debian_linux", "ssh/login/packages", re:"ssh/login/release=DEB(4|5)");
script_xref(name:"Advisory-ID", value:"DSA-1860-1");
script_xref(name:"URL", value:"https://www.debian.org/security/2009/DSA-1860-1");
script_xref(name:"URL", value:"https://security-tracker.debian.org/tracker/DSA-1860");
script_tag(name:"summary", value:"The remote host is missing an update for the Debian 'ruby1.8, ruby1.9' package(s) announced via the DSA-1860-1 advisory.");
script_tag(name:"vuldetect", value:"Checks if a vulnerable package version is present on the target host.");
script_tag(name:"insight", value:"Several vulnerabilities have been discovered in Ruby. The Common Vulnerabilities and Exposures project identifies the following problems:
CVE-2009-0642
The return value from the OCSP_basic_verify function was not checked properly, allowing continued use of a revoked certificate.
CVE-2009-1904
An issue in parsing BigDecimal numbers can result in a denial-of-service condition (crash).
The following matrix identifies fixed versions:
ruby1.8 ruby1.9
oldstable (etch)1.8.5-4etch5 1.9.0+20060609-1etch5
stable (lenny) 1.8.7.72-3lenny11.9.0.2-9lenny1
unstable (sid) 1.8.7.173-1 (soon)
We recommend that you upgrade your Ruby packages.");
script_tag(name:"affected", value:"'ruby1.8, ruby1.9' package(s) on Debian 4, Debian 5.");
script_tag(name:"solution", value:"Please install the updated package(s).");
script_tag(name:"solution_type", value:"VendorFix");
script_tag(name:"qod_type", value:"package");
exit(0);
}
include("revisions-lib.inc");
include("pkg-lib-deb.inc");
release = dpkg_get_ssh_release();
if(!release)
exit(0);
res = "";
report = "";
if(release == "DEB4") {
if(!isnull(res = isdpkgvuln(pkg:"irb1.8", ver:"1.8.5-4etch5", rls:"DEB4"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"irb1.9", ver:"1.9.0+20060609-1etch5", rls:"DEB4"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"libdbm-ruby1.8", ver:"1.8.5-4etch5", rls:"DEB4"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"libdbm-ruby1.9", ver:"1.9.0+20060609-1etch5", rls:"DEB4"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"libgdbm-ruby1.8", ver:"1.8.5-4etch5", rls:"DEB4"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"libgdbm-ruby1.9", ver:"1.9.0+20060609-1etch5", rls:"DEB4"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"libopenssl-ruby1.8", ver:"1.8.5-4etch5", rls:"DEB4"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"libopenssl-ruby1.9", ver:"1.9.0+20060609-1etch5", rls:"DEB4"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"libreadline-ruby1.8", ver:"1.8.5-4etch5", rls:"DEB4"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"libreadline-ruby1.9", ver:"1.9.0+20060609-1etch5", rls:"DEB4"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"libruby1.8", ver:"1.8.5-4etch5", rls:"DEB4"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"libruby1.8-dbg", ver:"1.8.5-4etch5", rls:"DEB4"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"libruby1.9", ver:"1.9.0+20060609-1etch5", rls:"DEB4"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"libruby1.9-dbg", ver:"1.9.0+20060609-1etch5", rls:"DEB4"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"libtcltk-ruby1.8", ver:"1.8.5-4etch5", rls:"DEB4"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"libtcltk-ruby1.9", ver:"1.9.0+20060609-1etch5", rls:"DEB4"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"rdoc1.8", ver:"1.8.5-4etch5", rls:"DEB4"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"rdoc1.9", ver:"1.9.0+20060609-1etch5", rls:"DEB4"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"ri1.8", ver:"1.8.5-4etch5", rls:"DEB4"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"ri1.9", ver:"1.9.0+20060609-1etch5", rls:"DEB4"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"ruby1.8", ver:"1.8.5-4etch5", rls:"DEB4"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"ruby1.8-dev", ver:"1.8.5-4etch5", rls:"DEB4"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"ruby1.8-elisp", ver:"1.8.5-4etch5", rls:"DEB4"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"ruby1.8-examples", ver:"1.8.5-4etch5", rls:"DEB4"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"ruby1.9", ver:"1.9.0+20060609-1etch5", rls:"DEB4"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"ruby1.9-dev", ver:"1.9.0+20060609-1etch5", rls:"DEB4"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"ruby1.9-elisp", ver:"1.9.0+20060609-1etch5", rls:"DEB4"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"ruby1.9-examples", ver:"1.9.0+20060609-1etch5", rls:"DEB4"))) {
report += res;
}
if(report != "") {
security_message(data:report);
} else if(__pkg_match) {
exit(99);
}
exit(0);
}
if(release == "DEB5") {
if(!isnull(res = isdpkgvuln(pkg:"irb1.8", ver:"1.8.7.72-3lenny1", rls:"DEB5"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"irb1.9", ver:"1.9.0.2-9lenny1", rls:"DEB5"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"libdbm-ruby1.8", ver:"1.8.7.72-3lenny1", rls:"DEB5"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"libdbm-ruby1.9", ver:"1.9.0.2-9lenny1", rls:"DEB5"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"libgdbm-ruby1.8", ver:"1.8.7.72-3lenny1", rls:"DEB5"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"libgdbm-ruby1.9", ver:"1.9.0.2-9lenny1", rls:"DEB5"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"libopenssl-ruby1.8", ver:"1.8.7.72-3lenny1", rls:"DEB5"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"libopenssl-ruby1.9", ver:"1.9.0.2-9lenny1", rls:"DEB5"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"libreadline-ruby1.8", ver:"1.8.7.72-3lenny1", rls:"DEB5"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"libreadline-ruby1.9", ver:"1.9.0.2-9lenny1", rls:"DEB5"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"libruby1.8", ver:"1.8.7.72-3lenny1", rls:"DEB5"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"libruby1.8-dbg", ver:"1.8.7.72-3lenny1", rls:"DEB5"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"libruby1.9", ver:"1.9.0.2-9lenny1", rls:"DEB5"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"libruby1.9-dbg", ver:"1.9.0.2-9lenny1", rls:"DEB5"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"libtcltk-ruby1.8", ver:"1.8.7.72-3lenny1", rls:"DEB5"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"libtcltk-ruby1.9", ver:"1.9.0.2-9lenny1", rls:"DEB5"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"rdoc1.8", ver:"1.8.7.72-3lenny1", rls:"DEB5"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"rdoc1.9", ver:"1.9.0.2-9lenny1", rls:"DEB5"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"ri1.8", ver:"1.8.7.72-3lenny1", rls:"DEB5"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"ri1.9", ver:"1.9.0.2-9lenny1", rls:"DEB5"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"ruby1.8", ver:"1.8.7.72-3lenny1", rls:"DEB5"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"ruby1.8-dev", ver:"1.8.7.72-3lenny1", rls:"DEB5"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"ruby1.8-elisp", ver:"1.8.7.72-3lenny1", rls:"DEB5"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"ruby1.8-examples", ver:"1.8.7.72-3lenny1", rls:"DEB5"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"ruby1.9", ver:"1.9.0.2-9lenny1", rls:"DEB5"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"ruby1.9-dev", ver:"1.9.0.2-9lenny1", rls:"DEB5"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"ruby1.9-elisp", ver:"1.9.0.2-9lenny1", rls:"DEB5"))) {
report += res;
}
if(!isnull(res = isdpkgvuln(pkg:"ruby1.9-examples", ver:"1.9.0.2-9lenny1", rls:"DEB5"))) {
report += res;
}
if(report != "") {
security_message(data:report);
} else if(__pkg_match) {
exit(99);
}
exit(0);
}
exit(0);