Security Fix(es) :
It was discovered that the Tomcat packages installed certain configuration files read by the Tomcat initialization script as writeable to the tomcat group.
A member of the group or a malicious web application deployed on Tomcat could use this flaw to escalate their privileges. (CVE-2016-6325)
It was found that several Tomcat session persistence mechanisms could allow a remote, authenticated user to bypass intended SecurityManager restrictions and execute arbitrary code in a privileged context via a web application that placed a crafted object in a session.
(CVE-2016-0714)
It was discovered that tomcat used the value of the Proxy header from HTTP requests to initialize the HTTP_PROXY environment variable for CGI scripts, which in turn was incorrectly used by certain HTTP client implementations to configure the proxy for outgoing HTTP requests. A remote attacker could possibly use this flaw to redirect HTTP requests performed by a CGI script to an attacker-controlled proxy via a malicious HTTP request. (CVE-2016-5388)
A directory traversal flaw was found in Tomcat’s RequestUtil.java. A remote, authenticated user could use this flaw to bypass intended SecurityManager restrictions and list a parent directory via a ‘/…’ in a pathname used by a web application in a getResource, getResourceAsStream, or getResourcePaths call, as demonstrated by the $CATALINA_BASE/webapps directory.
(CVE-2015-5174)
It was found that Tomcat could reveal the presence of a directory even when that directory was protected by a security constraint. A user could make a request to a directory via a URL not ending with a slash and, depending on whether Tomcat redirected that request, could confirm whether that directory existed.
(CVE-2015-5345)
It was found that Tomcat allowed the StatusManagerServlet to be loaded by a web application when a security manager was configured. This allowed a web application to list all deployed web applications and expose sensitive information such as session IDs.
(CVE-2016-0706)
Bug Fix(es) :
#%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(94004);
script_version("2.10");
script_set_attribute(attribute:"plugin_modification_date", value:"2021/01/14");
script_cve_id("CVE-2015-5174", "CVE-2015-5345", "CVE-2016-0706", "CVE-2016-0714", "CVE-2016-5388", "CVE-2016-6325");
script_name(english:"Scientific Linux Security Update : tomcat6 on SL6.x (noarch) (20161010) (httpoxy)");
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:
"Security Fix(es) :
- It was discovered that the Tomcat packages installed
certain configuration files read by the Tomcat
initialization script as writeable to the tomcat group.
A member of the group or a malicious web application
deployed on Tomcat could use this flaw to escalate their
privileges. (CVE-2016-6325)
- It was found that several Tomcat session persistence
mechanisms could allow a remote, authenticated user to
bypass intended SecurityManager restrictions and execute
arbitrary code in a privileged context via a web
application that placed a crafted object in a session.
(CVE-2016-0714)
- It was discovered that tomcat used the value of the
Proxy header from HTTP requests to initialize the
HTTP_PROXY environment variable for CGI scripts, which
in turn was incorrectly used by certain HTTP client
implementations to configure the proxy for outgoing HTTP
requests. A remote attacker could possibly use this flaw
to redirect HTTP requests performed by a CGI script to
an attacker-controlled proxy via a malicious HTTP
request. (CVE-2016-5388)
- A directory traversal flaw was found in Tomcat's
RequestUtil.java. A remote, authenticated user could use
this flaw to bypass intended SecurityManager
restrictions and list a parent directory via a '/..' in
a pathname used by a web application in a getResource,
getResourceAsStream, or getResourcePaths call, as
demonstrated by the $CATALINA_BASE/webapps directory.
(CVE-2015-5174)
- It was found that Tomcat could reveal the presence of a
directory even when that directory was protected by a
security constraint. A user could make a request to a
directory via a URL not ending with a slash and,
depending on whether Tomcat redirected that request,
could confirm whether that directory existed.
(CVE-2015-5345)
- It was found that Tomcat allowed the
StatusManagerServlet to be loaded by a web application
when a security manager was configured. This allowed a
web application to list all deployed web applications
and expose sensitive information such as session IDs.
(CVE-2016-0706)
Bug Fix(es) :
- Due to a bug in the tomcat6 spec file, the catalina.out
file's md5sum, size, and mtime attributes were compared
to the file's attributes at installation time. Because
these attributes change after the service is started,
the 'rpm -V' command previously failed. With this
update, the attributes mentioned above are ignored in
the RPM verification and the catalina.out file now
passes the verification check."
);
# https://listserv.fnal.gov/scripts/wa.exe?A2=ind1610&L=scientific-linux-errata&F=&S=&P=1313
script_set_attribute(
attribute:"see_also",
value:"http://www.nessus.org/u?8e4be176"
);
script_set_attribute(attribute:"solution", value:"Update the affected packages.");
script_set_cvss_base_vector("CVSS2#AV:L/AC:L/Au:N/C:C/I:C/A:C");
script_set_cvss3_base_vector("CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H");
script_set_attribute(attribute:"plugin_type", value:"local");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:fermilab:scientific_linux:tomcat6");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:fermilab:scientific_linux:tomcat6-admin-webapps");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:fermilab:scientific_linux:tomcat6-docs-webapp");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:fermilab:scientific_linux:tomcat6-el-2.1-api");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:fermilab:scientific_linux:tomcat6-javadoc");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:fermilab:scientific_linux:tomcat6-jsp-2.1-api");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:fermilab:scientific_linux:tomcat6-lib");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:fermilab:scientific_linux:tomcat6-servlet-2.5-api");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:fermilab:scientific_linux:tomcat6-webapps");
script_set_attribute(attribute:"cpe", value:"x-cpe:/o:fermilab:scientific_linux");
script_set_attribute(attribute:"vuln_publication_date", value:"2016/02/25");
script_set_attribute(attribute:"patch_publication_date", value:"2016/10/10");
script_set_attribute(attribute:"plugin_publication_date", value:"2016/10/12");
script_set_attribute(attribute:"in_the_news", value:"true");
script_set_attribute(attribute:"generated_plugin", value:"current");
script_end_attributes();
script_category(ACT_GATHER_INFO);
script_copyright(english:"This script is Copyright (C) 2016-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:"tomcat6-6.0.24-98.el6_8")) flag++;
if (rpm_check(release:"SL6", reference:"tomcat6-admin-webapps-6.0.24-98.el6_8")) flag++;
if (rpm_check(release:"SL6", reference:"tomcat6-docs-webapp-6.0.24-98.el6_8")) flag++;
if (rpm_check(release:"SL6", reference:"tomcat6-el-2.1-api-6.0.24-98.el6_8")) flag++;
if (rpm_check(release:"SL6", reference:"tomcat6-javadoc-6.0.24-98.el6_8")) flag++;
if (rpm_check(release:"SL6", reference:"tomcat6-jsp-2.1-api-6.0.24-98.el6_8")) flag++;
if (rpm_check(release:"SL6", reference:"tomcat6-lib-6.0.24-98.el6_8")) flag++;
if (rpm_check(release:"SL6", reference:"tomcat6-servlet-2.5-api-6.0.24-98.el6_8")) flag++;
if (rpm_check(release:"SL6", reference:"tomcat6-webapps-6.0.24-98.el6_8")) flag++;
if (flag)
{
security_report_v4(
port : 0,
severity : SECURITY_HOLE,
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, "tomcat6 / tomcat6-admin-webapps / tomcat6-docs-webapp / etc");
}
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2015-5174
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2015-5345
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-0706
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-0714
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-5388
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-6325
www.nessus.org/u?8e4be176