The glibc packages provide the standard C and standard math libraries used by multiple programs on the system. Without these libraries, the Linux system cannot function properly.
Multiple errors in glibc’s formatted printing functionality could allow an attacker to bypass FORTIFY_SOURCE protections and execute arbitrary code using a format string flaw in an application, even though these protections are expected to limit the impact of such flaws to an application abort. (CVE-2012-3404, CVE-2012-3405, CVE-2012-3406)
This update also fixes the following bug :
All users of glibc are advised to upgrade to these updated packages, which contain backported patches to fix these issues.
#%NASL_MIN_LEVEL 70300
#
# (C) Tenable Network Security, Inc.
#
# The descriptive text is (C) Scientific Linux.
#
include('deprecated_nasl_level.inc');
include('compat.inc');
if (description)
{
script_id(61369);
script_version("1.10");
script_set_attribute(attribute:"plugin_modification_date", value:"2021/01/14");
script_cve_id("CVE-2012-3404", "CVE-2012-3405", "CVE-2012-3406");
script_name(english:"Scientific Linux Security Update : glibc on SL6.x i386/x86_64 (20120718)");
script_summary(english:"Checks rpm output for the updated packages");
script_set_attribute(
attribute:"synopsis",
value:
"The remote Scientific Linux host is missing one or more security
updates."
);
script_set_attribute(
attribute:"description",
value:
"The glibc packages provide the standard C and standard math libraries
used by multiple programs on the system. Without these libraries, the
Linux system cannot function properly.
Multiple errors in glibc's formatted printing functionality could
allow an attacker to bypass FORTIFY_SOURCE protections and execute
arbitrary code using a format string flaw in an application, even
though these protections are expected to limit the impact of such
flaws to an application abort. (CVE-2012-3404, CVE-2012-3405,
CVE-2012-3406)
This update also fixes the following bug :
- A programming error caused an internal array of
nameservers to be only partially initialized when the
/etc/resolv.conf file contained IPv6 nameservers.
Depending on the contents of a nearby structure, this
could cause certain applications to terminate
unexpectedly with a segmentation fault. The programming
error has been fixed, which restores proper behavior
with IPv6 nameservers listed in the /etc/resolv.conf
file.
All users of glibc are advised to upgrade to these updated packages,
which contain backported patches to fix these issues."
);
# https://listserv.fnal.gov/scripts/wa.exe?A2=ind1207&L=scientific-linux-errata&T=0&P=5595
script_set_attribute(
attribute:"see_also",
value:"http://www.nessus.org/u?8eb6dd77"
);
script_set_attribute(attribute:"solution", value:"Update the affected packages.");
script_set_cvss_base_vector("CVSS2#AV:N/AC:M/Au:N/C:P/I:P/A:P");
script_set_attribute(attribute:"plugin_type", value:"local");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:fermilab:scientific_linux:glibc");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:fermilab:scientific_linux:glibc-common");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:fermilab:scientific_linux:glibc-debuginfo");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:fermilab:scientific_linux:glibc-debuginfo-common");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:fermilab:scientific_linux:glibc-devel");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:fermilab:scientific_linux:glibc-headers");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:fermilab:scientific_linux:glibc-static");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:fermilab:scientific_linux:glibc-utils");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:fermilab:scientific_linux:nscd");
script_set_attribute(attribute:"cpe", value:"x-cpe:/o:fermilab:scientific_linux");
script_set_attribute(attribute:"vuln_publication_date", value:"2014/02/10");
script_set_attribute(attribute:"patch_publication_date", value:"2012/07/18");
script_set_attribute(attribute:"plugin_publication_date", value:"2012/08/01");
script_set_attribute(attribute:"generated_plugin", value:"current");
script_end_attributes();
script_category(ACT_GATHER_INFO);
script_copyright(english:"This script is Copyright (C) 2012-2021 and is owned by Tenable, Inc. or an Affiliate thereof.");
script_family(english:"Scientific Linux Local Security Checks");
script_dependencies("ssh_get_info.nasl");
script_require_keys("Host/local_checks_enabled", "Host/cpu", "Host/RedHat/release", "Host/RedHat/rpm-list");
exit(0);
}
include("audit.inc");
include("global_settings.inc");
include("misc_func.inc");
include("rpm.inc");
if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
release = get_kb_item("Host/RedHat/release");
if (isnull(release) || "Scientific Linux " >!< release) audit(AUDIT_HOST_NOT, "running Scientific Linux");
os_ver = pregmatch(pattern: "Scientific Linux.*release ([0-9]+(\.[0-9]+)?)", string:release);
if (isnull(os_ver)) audit(AUDIT_UNKNOWN_APP_VER, "Scientific Linux");
os_ver = os_ver[1];
if (! preg(pattern:"^6([^0-9]|$)", string:os_ver)) audit(AUDIT_OS_NOT, "Scientific Linux 6.x", "Scientific Linux " + os_ver);
if (!get_kb_item("Host/RedHat/rpm-list")) audit(AUDIT_PACKAGE_LIST_MISSING);
cpu = get_kb_item("Host/cpu");
if (isnull(cpu)) audit(AUDIT_UNKNOWN_ARCH);
if (cpu >!< "x86_64" && cpu !~ "^i[3-6]86$") audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, "Scientific Linux", cpu);
flag = 0;
if (rpm_check(release:"SL6", reference:"glibc-2.12-1.80.el6_3.3")) flag++;
if (rpm_check(release:"SL6", reference:"glibc-common-2.12-1.80.el6_3.3")) flag++;
if (rpm_check(release:"SL6", reference:"glibc-debuginfo-2.12-1.80.el6_3.3")) flag++;
if (rpm_check(release:"SL6", reference:"glibc-debuginfo-common-2.12-1.80.el6_3.3")) flag++;
if (rpm_check(release:"SL6", reference:"glibc-devel-2.12-1.80.el6_3.3")) flag++;
if (rpm_check(release:"SL6", reference:"glibc-headers-2.12-1.80.el6_3.3")) flag++;
if (rpm_check(release:"SL6", reference:"glibc-static-2.12-1.80.el6_3.3")) flag++;
if (rpm_check(release:"SL6", reference:"glibc-utils-2.12-1.80.el6_3.3")) flag++;
if (rpm_check(release:"SL6", reference:"nscd-2.12-1.80.el6_3.3")) flag++;
if (flag)
{
security_report_v4(
port : 0,
severity : SECURITY_WARNING,
extra : rpm_report_get()
);
exit(0);
}
else
{
tested = pkg_tests_get();
if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
else audit(AUDIT_PACKAGE_NOT_INSTALLED, "glibc / glibc-common / glibc-debuginfo / glibc-debuginfo-common / etc");
}
Vendor | Product | Version | CPE |
---|---|---|---|
fermilab | scientific_linux | glibc | p-cpe:/a:fermilab:scientific_linux:glibc |
fermilab | scientific_linux | glibc-common | p-cpe:/a:fermilab:scientific_linux:glibc-common |
fermilab | scientific_linux | glibc-debuginfo | p-cpe:/a:fermilab:scientific_linux:glibc-debuginfo |
fermilab | scientific_linux | glibc-debuginfo-common | p-cpe:/a:fermilab:scientific_linux:glibc-debuginfo-common |
fermilab | scientific_linux | glibc-devel | p-cpe:/a:fermilab:scientific_linux:glibc-devel |
fermilab | scientific_linux | glibc-headers | p-cpe:/a:fermilab:scientific_linux:glibc-headers |
fermilab | scientific_linux | glibc-static | p-cpe:/a:fermilab:scientific_linux:glibc-static |
fermilab | scientific_linux | glibc-utils | p-cpe:/a:fermilab:scientific_linux:glibc-utils |
fermilab | scientific_linux | nscd | p-cpe:/a:fermilab:scientific_linux:nscd |
fermilab | scientific_linux | x-cpe:/o:fermilab:scientific_linux |