The remote host is affected by the vulnerability described in GLSA-200612-17 (GNU Radius: Format string vulnerability)
A format string vulnerability was found in the sqllog function from the SQL accounting code for radiusd. That function is only used if one or more of the 'postgresql', 'mysql' or 'odbc' USE flags are enabled, which is not the default, except for the 'server' 2006.1 and 2007.0 profiles which enable the 'mysql' USE flag.
Impact :
An unauthenticated remote attacker could execute arbitrary code with the privileges of the user running radiusd, which may be the root user.
It is important to note that there is no default GNU Radius user for Gentoo systems because no init script is provided with the package.
Workaround :
There is no known workaround at this time.
#%NASL_MIN_LEVEL 70300
#
# (C) Tenable Network Security, Inc.
#
# The descriptive text and package checks in this plugin were
# extracted from Gentoo Linux Security Advisory GLSA 200612-17.
#
# The advisory text is Copyright (C) 2001-2015 Gentoo Foundation, Inc.
# and licensed under the Creative Commons - Attribution / Share Alike
# license. See http://creativecommons.org/licenses/by-sa/3.0/
#
include('deprecated_nasl_level.inc');
include('compat.inc');
if (description)
{
script_id(23874);
script_version("1.11");
script_set_attribute(attribute:"plugin_modification_date", value:"2021/01/06");
script_cve_id("CVE-2006-4181");
script_xref(name:"GLSA", value:"200612-17");
script_name(english:"GLSA-200612-17 : GNU Radius: Format string vulnerability");
script_summary(english:"Checks for updated package(s) in /var/db/pkg");
script_set_attribute(
attribute:"synopsis",
value:
"The remote Gentoo host is missing one or more security-related
patches."
);
script_set_attribute(
attribute:"description",
value:
"The remote host is affected by the vulnerability described in GLSA-200612-17
(GNU Radius: Format string vulnerability)
A format string vulnerability was found in the sqllog function from the
SQL accounting code for radiusd. That function is only used if one or
more of the 'postgresql', 'mysql' or 'odbc' USE flags are enabled,
which is not the default, except for the 'server' 2006.1 and 2007.0
profiles which enable the 'mysql' USE flag.
Impact :
An unauthenticated remote attacker could execute arbitrary code with
the privileges of the user running radiusd, which may be the root user.
It is important to note that there is no default GNU Radius user for
Gentoo systems because no init script is provided with the package.
Workaround :
There is no known workaround at this time."
);
script_set_attribute(
attribute:"see_also",
value:"https://security.gentoo.org/glsa/200612-17"
);
script_set_attribute(
attribute:"solution",
value:
"All GNU Radius users should upgrade to the latest version:
# emerge --sync
# emerge --ask --oneshot --verbose '>=net-dialup/gnuradius-1.4'"
);
script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:C/I:C/A:C");
script_set_attribute(attribute:"plugin_type", value:"local");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:gentoo:linux:gnuradius");
script_set_attribute(attribute:"cpe", value:"cpe:/o:gentoo:linux");
script_set_attribute(attribute:"patch_publication_date", value:"2006/12/14");
script_set_attribute(attribute:"plugin_publication_date", value:"2006/12/16");
script_end_attributes();
script_category(ACT_GATHER_INFO);
script_copyright(english:"This script is Copyright (C) 2006-2021 Tenable Network Security, Inc.");
script_family(english:"Gentoo Local Security Checks");
script_dependencies("ssh_get_info.nasl");
script_require_keys("Host/local_checks_enabled", "Host/Gentoo/release", "Host/Gentoo/qpkg-list");
exit(0);
}
include("audit.inc");
include("global_settings.inc");
include("qpkg.inc");
if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
if (!get_kb_item("Host/Gentoo/release")) audit(AUDIT_OS_NOT, "Gentoo");
if (!get_kb_item("Host/Gentoo/qpkg-list")) audit(AUDIT_PACKAGE_LIST_MISSING);
flag = 0;
if (qpkg_check(package:"net-dialup/gnuradius", unaffected:make_list("ge 1.4"), vulnerable:make_list("lt 1.4"))) flag++;
if (flag)
{
if (report_verbosity > 0) security_hole(port:0, extra:qpkg_report_get());
else security_hole(0);
exit(0);
}
else
{
tested = qpkg_tests_get();
if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
else audit(AUDIT_PACKAGE_NOT_INSTALLED, "GNU Radius");
}